首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Vue 3 中 watch 和 watchEffect 的依赖收集差异导致的一个隐蔽 bug

Vue 3 中 watch 和 watchEffect 的依赖收集差异导致的一个隐蔽 bug

作者头像
用户12771345
发布于 2026-10-01 08:32:45
发布于 2026-10-01 08:32:45
110
举报
概述
在最近维护的一个后台管理项目中,我遇到了一个很典型的问题:一个用于显示用户权限变更的 watch 回调在用户切换角色后偶尔不触发,但刷新页面后又恢复正常。排查后发现根源在于 watch 和 watchEffect 对响应式依赖的收集方式不同——watch 是惰性且显式声明依赖源,而 watchEffect 是立即执行并自动收集所有同步访问的响应式属性。这个差异在依赖包含条件分支或异步逻辑时尤其容易

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档