如何理解v-model的实质为语法糖

vue的v-model为表单的完成提供了极大的便利,可以进行数据绑定,例如将input框的值和span值绑定,只要重新输入显示值会立即更改。下面我们来分析这一命令是如何实现的。在官方文档中解释这一名令实际仅是一个语法糖。那么首先我们来看看语法糖的概念:

语法糖:指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。

再来看看v-model的官方文档
这里写图片描述
也就是v-modle实际为语法糖。v-model=”something”则表示将value值绑定在something上,当值发生改变时触发绑定的oninput事件。oninput事件绑定的函数是将触发oninput事件的目标(该input)的value值赋值给something这个变量。所以:

  • something即是实时的value值,每一次value值得更改都会触发something改变
  • 如果有别的控件绑定something那么input的value值改变改控件的值显示,因此实现了双向绑定

接下来我们看一个例子,改例子中利用v-model实现textarea的剩余字数统计:
先来看不用v-model实现的版本

 <p>{{text}}<p>
 <div class="item" id="text">
    <label>简述:</label>
    <textarea maxlength="300" v-model="text"  ></textarea>
</div>

 <div id="icount">
    <p id="spann">您还可以输入{{wordc}}</p>
 </div>

以下是script部分代码

data () {
      return {
        text: '',
        wordc: '300'
      }
    },
    methods: {
      mycou: function (event) {
        var a = this.text.length
        this.wordc = 300 - a
      }
    }

效果图
这里写图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值