v-model的实现原理 vue

基础用法:

v-model 本质上不过是语法糖,常见可以用 v-model 指令在表单 <input><textarea> 及 <select> 元素上创建双向数据绑定。

本质上:

v-model是vue的一个语法糖,一个是v-bind去单项绑定vue实例里面的data数据,然后再通过各种事件比如@change @input等去进行触发事件修改实例数据的值,

如果在vuex中需要去绑定store里面的数据,则需要通过dispatch一个action,然后action再去提交mutation修改store里面的值

底层实现:

核心是Object.defineProperty()方法,那接下来我们就简单介绍一下!
语法:

Object.defineProperty(obj, prop, descriptor)
其中:
obj
要在其上定义属性的对象。
prop
要定义或修改的属性的名称。
descriptor
将被定义或修改的属性描述符。

其实,简单点来说,就是通过此方法来定义一个值。
调用,使用到了get方法,
赋值,使用到了set方法。
我们来看个例子热热身:

没过瘾?

那再看这链接中写的更详细,3分钟左右即可食用完

https://www.cnblogs.com/youguo2/p/14116013.html

原文地址:https://www.cnblogs.com/youguo2/p/14116238.html