Vue3学习笔记之数据绑定篇(0823)

学习完Vue2 的C友们,今天继续追赶Vue3的大潮流吧!
废话不多说,直接上代码

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script src="../js/vue.esm-browser.js"></script>
</head>
<body>
  <div id="app">
    <h3>文本框{{data.text}}</h3>
    <h3>单选框{{data.radio}}</h3>
    <h3>复选框{{data.checkbox}}</h3>
    <h3>记住密码 {{data.remenber}}</h3>
    <h3>下拉框{{data.select}}</h3> 


    <!-- 单项数据绑定,当数据发行改变时,视图会自动更新,但用户手动更改时input值,数据不会自动更行 -->
     <h3>单项数据绑定 <input type="text" :value="data.text"> </h3>


     <!-- 双向数据绑定,当数据发生改变时,视图会自动更新,当用户手动更改input值时,数据也会自动更新
     对于 <input type="text" > v-module 绑定的是input元素的Value属性 
     -->
     <h3>双向数据绑定</h3> <input type="text" v-model="data.text"><br><br>



     <!-- 单选框 对于<input type="radio">,V-model 绑定的是input 元素的选中状态 -->
      <input type="radio" v-model="data.radio" value="1">写作
      <input type="radio" v-model="data.radio" value="2"> 画画
      <br><br>
      

      <!-- 复选框 对于<input type="checkout" > v-model绑定的是input元素的选中checked属性 -->
       <input type="checkbox" v-model="data.checkbox" value="a">阅读
       <input type="checkbox" v-model="data.checkbox" value="b">画画
       <input type="checkbox" v-model="data.checkbox" value="c">写作
       <br><br>

       <!-- 记住密码 -->
        <input type="checkbox" v-model="data.remenber"  > 记住密码
        <br><br>

        <!-- 下拉框,对于<select> v-model绑定的是select元素的选中状态-->
          <select v-model="data.select">
            <option value="">请选择</option>
            <option value="A">写作</option>
            <option value="B">画画</option>
            <option value="C">运动</option>
          </select>
  </div>
  <script type="module">
    import {createApp,reactive,ref} from '../js/vue.esm-browser.js'
    createApp({
      setup() {
        const data = reactive({
          text:"dangruicode.com", //文本框
          radio:"" , //单选框
          checkbox:[],//复选框
          remenber:false, //单个复选框-记住密码
          select:"" , //下拉框
        })
        return{
         data,
        }
      }
    }).mount("#app")
  </script>![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/fee9e26b059b43fc8379c0c67f9a000b.gif)

</body>
</html>


v-model 修饰符

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script src="../js/vue.esm-browser.js"></script>
</head>
<body>
  <div id="app">
    <h3>url:{{web.url}}</h3>
    <h3>user:{{web.user}}</h3>

    实时渲染<input type="text" v-model="web.url"><br><br>
    lazy实时渲染<input type="text" v-model.lazy="web.url">
<br><br>

    <!-- 输入100人,web.user的值仍为100 -->
    不添加 .number <input type="text" v-model="web.user"><br><br>
     输入框的值转换为数据类型 <input type="text" v-model.number="web.user">


     <br><br><br>
    没有 .trim <input type="text" v-model="web.url">    <br><br>
     去除首位空格<input type="text" v-model.trim="web.url">
  </div>
  
  <script type="module">
    import {createApp,reactive} from '../js/vue.esm-browser.js'
    createApp({
     setup(){
      const web = reactive({
       url:"www.baidu.com",
       user:100,
      })
      return{
       web
      }
    }
   
    }).mount("#app")
  </script>
</body>
</html>

对了,还有一个还有Vue.js文件,可以去官网下载(https://unpkg.com/vue@3/dist/vue.esm-browser.js)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/3befb5b3090e458e89d69d4b80cab97e.png)

同时,我也上传啦

相关推荐
hengcaib16 分钟前
防封号电销外包公司怎么选合规线路与风控核查方法
笔记
胡渠洋1 小时前
postman学习
学习·测试工具·postman
Amazing_Cacao3 小时前
CFCA精品可可产区风土解析(美洲):无情打破风味堆叠假象,建立时间轴上的层次动态阅读系统
学习
六点_dn3 小时前
Linux学习笔记-shell运算符
linux·笔记·学习
其实防守也摸鱼3 小时前
渗透--损坏的对象级别鉴权漏洞(Broken Object Level Authorization, BOLA)
大数据·网络·数据库·学习·tcp/ip·安全·安全威胁分析
铅笔侠_小龙虾4 小时前
Rust 学习(2)-变量、常量与 shadowing
学习·算法·rust
降临-max4 小时前
软件测试基础---项目实战
软件测试·笔记·功能测试·测试用例
it小生01014 小时前
从底层思维到高效行动,顶尖人才进阶核心修炼指南
学习·学习方法
恣逍信点4 小时前
《凌微经》通俗解读——哲学第一因
学习·职场和发展·创业创新·学习方法·业界资讯·交友·哲学
鱼子星_5 小时前
【C++】内存管理:内存分布,new/delete的使用及细节处理,new/delete的底层,定位new表达式
开发语言·c++·笔记