vue 2.x源码随手记 --Vue的依赖收集

引文:看源码的随手记

Vue的依赖收集

关键:

initProps
initData

observer()
class Observer 数组的响应式(重写数组的原型链上的方法push\shift…) 以及 一般的响应式
但都是通过Object.defineProperty

Object.defineProperty(setter getter)


首先我们有一个Dep类,主要用来存放观察者对象
主要做两件事情

  1. 用 addSub 方法可以在目前的 Dep 对象中增加一个 Watcher 的订阅操作;
  2. 用 notify 方法通知目前 Dep 对象的 subs 中的所有 Watcher 对象触发更新操作。

Watcher如何触发 视图更新?
其会触发update钩子

你可能感兴趣的:(前端,JavaScript,vue,源码)