关于收集依赖dep.depend() 的疑问

来源:4-6 依赖收集(下)

秃然的地中海

2021-11-23

黄老师你好!在对数据完成观测之后,后面new Watcher,到触发getter进行依赖收集时,执行dep.depend(),这个dep只是上面刚刚 new 出来的实例,这个 dep 跟当前数据对象的 --ob–.dep 属性有什么关系呢?我看网上其他的说是:执行const ob = this.–ob–; ob.dep.depend(); 执行的是当前数据对象的dep.depend();图片描述图片描述

写回答

1回答

ustbhuangyi

2021-11-24

这个 dep 和 ob.dep 没什么关系,这个 dep.depend 执行的时候是为了收集当前执行的 watcher 作为它依赖。

而 ob.dep 是为了 Vue.set 用的

//img.mukewang.com/szimg/619dd269099308ac04800246.jpg

这里做依赖收集,然后 Vue.set 会执行 ob.dep.notify()

这块内容后面视频会讲

0
3
秃然的地中海
感谢黄老师!
2021-11-25
共3条回复

Vue.js 源码深入解析 深入理解Vue实现原理

全方位讲解 Vue.js 源码,进阶高级工程师

4984 学习 · 1037 问题

查看课程

相似问题