Vue computed计算对象不生效问题及解决
作者:不想起名55
这篇文章主要介绍了Vue computed计算对象不生效问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
问题描述
最近使用vuex来管理全局状态,遇到了computed计算state中数据却不生效的问题。
原因分析
先看vue官网示例:
computed接收的是一个getter函数,但是这个getter函数是懒加载并且有缓存的,当计算属性最终计算的值发生变化才会触发渲染
在变更对象或数组时,旧值将与新值相同,因为它们的引用指向同一个对象/数组。Vue 不会保留变更之前值的副本。
如果想要更新官网给出的解决方案是使用方法,重新渲染发生时再次执行函数,但是这种在我的业务场景不行
解决方案
计算具体值
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。