为什么这种情况 vue3 watchEffect 会触发?-灵析社区

猫界袁隆平

setup() { const obj = reactive({}); watchEffect(() => { console.log(obj); }) obj.num = 3; // 触发 watchEffect 回调执行 }, reactive 收集依赖不是要通过 Proxy 触发 get 吗,为什么这里只是打印 obj(没有触发 get),也能够收集到依赖?

阅读量:16

点赞量:0

问AI
正常应该是执行一次 奇怪的是你给的链接的确是执行了两次,可能是因为在线环境奇怪的原因 我本地创建的项目,和使用在线 vite 创建的项目都是执行一次(在线连接:"https://stackblitz.com/edit/vitejs-vite-mgdshp?file=src%2FApp..." (https://link.segmentfault.com/?enc=tYuqI1RFIKYKeGbcBPmsRA%3D%3D.7dGzhe0oYlCdgG9R5IIabE%2BUcjIwzQkEaK7leCzx1f%2BtsC92WqV4U4lkyXUyyC676%2FlIQ9B1s9hu12wOqiOzI0hujnqyrgdfpyKxCiXTh5M%3D))