Vue学习---第二天_v-model【6.2】

一、v-model基本使用

代码如下:

<div id='app'>
    <input type="text" v-model="message">{{message}}
  </div>

  <script src='./js/vue.js'></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        message: '你好'
      }
    })
  </script>

效果如下:
在这里插入图片描述

二、v-model原理

在这里插入图片描述
代码如下:

<div id='app'>
    <!-- <input type="text" v-model="message"> -->
    <!-- 把数据绑定到input中 -->
    <!-- <input type="text" :value="message" @input="valueChange"> -->
    <input type="text" :value="message" @input="message = $event.target.value">
    <h2>{{message}}</h2>
  </div>

  <script src='./js/vue.js'></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        message: '你好'
      },
      methods: {
        valueChange(e) {
          this.message = e.target.value
        }
      }
    })
  </script>

效果如下:
在这里插入图片描述

三、v-model与表单结合
1.v-model:radio

在这里插入图片描述
代码如下:

<div id='app'>
    <label for="male">
      <!-- 有了v-model绑定,name可以去掉 -->
      <!-- name用来区别不同组的radio -->
      <input type="radio" id="male" name="sex" value="" v-model="sex"></label>
    <label for="female">
      <input type="radio" id="female" name="sex" value="" v-model="sex"></label>
    <h2>性别是:{{sex}}</h2>
  </div>

  <script src='./js/vue.js'></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        message: '你好',
        sex: '男'
      }
    })
  </script>

效果如下:
在这里插入图片描述

2.v-model:checkbox


代码如下:

<div id='app'>
    <!-- checkbox单选框 -->
    <label for="agree">
      <input type="checkbox" name="" id="agree" v-model="isAgree">同意协议
    </label>
    <button :disabled="!isAgree">下一步</button>
    <h2>选择的是:{{isAgree}}</h2>

    <!-- checkbox多选框 -->
    <label for="hobbies">
      <input type="checkbox" name="hobbies" id="" value="篮球" v-model="hobbies">篮球
      <input type="checkbox" name="hobbies" id="" value="足球" v-model="hobbies">足球
      <input type="checkbox" name="hobbies" id="" value="羽毛球" v-model="hobbies">羽毛球
      <input type="checkbox" name="hobbies" id="" value="乒乓球" v-model="hobbies">乒乓球
    </label>
    <h2>您的爱好是:{{hobbies}}</h2>
  </div>

  <script src='./js/vue.js'></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        message: '你好',
        isAgree: false,  //单选框
        hobbies: []      //多选框
      }
    })
  </script>

效果如下:
在这里插入图片描述

3.v-model:select

在这里插入图片描述
代码如下:

<div id='app'>
    <!-- 1.选择一个 -->
    <select name="abc" id=""  v-model="fruit" >
      <option value="苹果">苹果</option>
      <option value="香蕉">香蕉</option>
      <option value="胡萝卜">胡萝卜</option>
      <option value="菠萝">菠萝</option>
    </select>
    <h3>选择的水果为:{{fruit}}</h3>

    <!-- 2.选择多个 -->
    <select name="abc" id=""  v-model="fruits" multiple>
      <option value="苹果">苹果</option>
      <option value="香蕉">香蕉</option>
      <option value="胡萝卜">胡萝卜</option>
      <option value="菠萝">菠萝</option>
    </select>
    <h3>选择的水果为:{{fruits}}</h3>
  </div>

  <script src='./js/vue.js'></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        message: '你好',
        fruit: '香蕉',
        fruits: []
      }
    })
  </script>

效果如下:
在这里插入图片描述

四、值类型

在这里插入图片描述

五、修饰符

在这里插入图片描述
代码如下:

<div id='app'>
    <!-- 1.修饰符一:lazy失去焦点或回车 -->
    <input type="text" v-model.lazy="message">
    <h2>{{message}}</h2>

    <!-- 2.修饰符2:number -->
    <input type="number" v-model="age">
    <h2>{{age}}--{{typeof age}}</h2>

    <!-- 3.修饰符3:trim去除两边空格 -->
    <input type="text" v-model.trim="name">
    <h2>{{name}}</h2>
  </div>

  <script src='./js/vue.js'></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        message: '你好',
        age: 0,
        name: ''
      }
    })
  </script>

效果如下:
在这里插入图片描述

内容持续更新中…
lvan学习笔记-文章内容仅个人观点
2020.6.2

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值