您的位置:首页 > Web前端 > Vue.js

Vue双向数据绑定是怎么回事?

2020-07-14 06:35 190 查看

了解过Vue的同学都知道可以用v-model指令在表单、 及 元素上创建双向数据绑定。

示例代码:

<input v-model="message" placeholder="edit me">
<p>Message is: {{ message }}</p>

Vue会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇,但 v-model 本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。

v-mode l会忽略所有表单元素的 value、checked、selected 特性的初始值而总是将 Vue 实例的数据作为数据来源。你应该通过 JavaScript 在组件的 data 选项中声明初始值。
v-model 在内部为不同的输入元素使用不同的属性并抛出不同的事件:text 和 textarea 元素使用 value 属性和 input 事件; checkbox 和 radio 使用 checked 属性和 change 事件; select 字段将 value 作为 prop 并将 change 作为事件。

接下来我们就从编译器的预处理的角度来分析双向数据绑定的语法糖实现。

… 这篇文章老早就想写了,一直拖到了现在。 当然现在也只是一个开头最近更新文章的频率下降了,检讨下懒惰的自己。 得又该忙去了 … 立个flag 这篇文章在本周一定写出来。

推荐:

申请即送:

  • BAT大厂面试题、独家面试工具包,

  • 资料免费领取,包括 各类面试题以及答案整理,各大厂面试真题分享!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: