🌔 Vue 数据绑定原理
# MVVM 模型
- M(Model):对应
data
中的数据; - V(View)视图(模版);
- VM(ViewModel):Vue 实例对象;
通过测试观察:
data
中的属性最后会出现在vm
(指定的 Vue 实例对象);vm
中的所有属性以及 Vue 原型上的所有属性,在 Vue 模版中都可直接使用;
# 数据代理
通过一个对象代理对另一个对象中属性的操作(读写);
Vue 中的数据代理(P13 (opens new window)):通过 vm 对象来代理 data 对象中属性的操作(读写);
Vue 中数据代理的好处:
- 更加方便的操作 data 中的数据
基本原理:
通过 Object.defineProperty()
把 data
对象中所有属性添加到 vm
上。 为每一个添加到 vm
上的属性,都指定一个 getter
/ setter
。 在 getter
/ setter
内部去操作(读 / 写) data
中对应的属性。
编辑 (opens new window)
📢 上次更新: 2022/09/02, 10:18:16