引文:看源码的随手记
Vue的依赖收集
关键:
initProps
initData
observer()
class Observer 数组的响应式(重写数组的原型链上的方法push\shift…) 以及 一般的响应式
但都是通过Object.defineProperty
Object.defineProperty(setter getter)
首先我们有一个Dep类,主要用来存放观察者对象
主要做两件事情
- 用 addSub 方法可以在目前的 Dep 对象中增加一个 Watcher 的订阅操作;
- 用 notify 方法通知目前 Dep 对象的 subs 中的所有 Watcher 对象触发更新操作。
Watcher如何触发 视图更新?
其会触发update钩子