vue 中依赖基本数据类型的 watcher,存放在哪里?

依赖对象 a 的 watcher 可以在 vm.$data.__ob__.dep.subs 里看到,可是依赖 c 的watcher 不知道在哪里。

<div id="app">
  <p>{{c}}--{{cc}}</p>
  <div>{{a.b}} --{{aa}}</div>
</div>

<script>
    var vm = new Vue({
      el: "#app",
      data: {
        a: {
          b: 2,
        },
        c: 0,
      },
      computed: {
        aa() {
          return this.a;
        },
        cc() {
          return this.c;
        },
      },
    });
  </script>

image.png

阅读 2.1k
1 个回答

所有的watcher都可以在vm._watchers中找到

依赖c的watcher有computed-watcher cc和render-watcher,其中render-watcher就是vm._computedWatchers,computed-watcher可以在vm._computedWatchers中找到

vue-数据监听与依赖收集

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏