要想理解原理就得看源码,最近网上也找了好多vue初始化方法(8个init恶魔...) 因为也是循序渐进的理解,对initComputed计算属性的初始化有几处看得不是很明白,网上也都是含糊其辞的(要想深入必须深入...),所以debug了好几天,才算是有点头绪,现在写出来即帮自己再次理下思路,也可以让大佬指出错误 首先,基本的双向绑定原理就不说了,可以去搜下相关教程,还是要先理解下简单的例子 进入正题,先来看下initComputed的源码结构,这之前还是先放一个例子也好说明 function
大体思路(七) 本节内容: deps 依赖收集的数组对象 => Dep 构造函数 /** ==> observe() * var ob * ==> if --isObject * ==> if -- shouldObserve isExtensible is_Vue 是否可扩展 * ==> ob = new Observe(value); * == if ob.vmCount++ * ==> reutrn ob * Observe(value){ * this.valu