目录
- 1.MVVM模型
- 2.数据代理
-
- (1)什么是数据代理?
- (2)vue中的数据代理
- 3.vue响应式原理
- 4.vue双向绑定原理
- 5.v-model双向绑定原理
1.MVVM模型
Model:模型,对应data中的数据。
View:视图,对应模板。
ViewModel(VM):视图模型,对应Vue实例对象。
2.数据代理
(1)什么是数据代理?
数据代理:通过一个对象代理对另一个对象中的属性进行操作(读/写)。
(2)vue中的数据代理
定义:通过vm(vue实例)对象来代理data对象中属性的操作(读/写)。
优点:更加方便的操作data中的数据。
基本原理:
(1)通过Object.denfineProperty()把data对象中的属性都添加到vm实例对象上。
(2)为每一个添加到vm上的属性,都指定一个getter和setter。
(3)在getter/setter内部去操作data中对应的属性。
3.vue响应式原理
通过使用Object.defineProperty()方法劫持数据对象的属性,当数据发生变化时,会自动触发对应的跟新操作,从而实现了数据和视图的自动同步。
4.vue双向绑定原理
通过数据劫持和发布订阅模式来实现,同时利用Object.