vue3 什么时候出发computed
时间: 2024-08-11 22:01:44 浏览: 95
Vue 3 中的 `Computed` 属性会在以下几个情况下自动更新:
1. 当依赖的数据改变时:如果 `Computed` 计算属性的计算表达式依赖于 `watch` 对象、响应式数据或函数返回的结果,只要这些基础数据发生变化,`Computed` 就会重新计算。
2. 当组件实例被重新渲染时:无论是通过数据变化触发的视图更新,还是组件自身的销毁重建,都会导致 `Computed` 的重新计算。
3. 调用 `this.$set()` 或者手动修改响应式数据的底层值时:虽然直接操作 `data` 的普通属性不会触发 `Computed` 的更新,但如果使用 `$set` 来更改响应式路径,或者影响到计算属性的基础数据结构,则会引发 `Computed` 更新。
4. 如果 `Computed` 的返回值是一个异步操作,那么当异步操作完成并改变了结果,`Computed` 也会重新计算。
需要注意的是,只有在 `get` 方法中对响应式数据进行了读取或计算的地方,才会监视到这些变更,而 `set` 方法本身并不自动更新 `Computed`,除非你在 `set` 的处理逻辑中实现了需要。
阅读全文