|
@@ -990,7 +990,7 @@ get: function reactiveGetter () {
|
|
|
const value = getter ? getter.call(obj) : val
|
|
|
```
|
|
|
|
|
|
-首先判断是否存在 `getter`,我们知道 `getter` 常量中保存的是属性原型的 `get` 函数,如果 `getter` 存在那么直接调用该函数,并以该函数的返回值作为属性的值,保证属性的原有读取操作正常运作。如果 `getter` 不存在则使用 `val` 作为属性的值。可以发现 `get` 函数的最后一句将 `value` 常量返回,这样 `get` 函数需要做的第一件事就完成了,即正确地返回属性值。
|
|
|
+首先判断是否存在 `getter`,我们知道 `getter` 常量中保存的是属性原有的 `get` 函数,如果 `getter` 存在那么直接调用该函数,并以该函数的返回值作为属性的值,保证属性的原有读取操作正常运作。如果 `getter` 不存在则使用 `val` 作为属性的值。可以发现 `get` 函数的最后一句将 `value` 常量返回,这样 `get` 函数需要做的第一件事就完成了,即正确地返回属性值。
|
|
|
|
|
|
除了正确地返回属性值,还要收集依赖,而处于 `get` 函数第一行和最后一行代码中间的所有代码都是用来完成收集依赖这件事儿的,下面我们就看一下它是如何收集依赖的,由于我们还没有讲解过 `Dep` 这个类,所以现在大家可以简单的认为 `dep.depend()` 这句代码的执行就意味着依赖被收集了。接下来我们仔细看一下代码:
|
|
|
|