【Vue】computed计算对象不生效问题?

问题描述

最近使用vuex来管理全局状态,遇到了computed计算state中数据却不生效的问题。


原因分析:

先看vue官网示例:

computed接收的是一个getter函数,但是这个getter函数是懒加载并且有缓存的,当计算属性最终计算的值发生变化才会触发渲染

在变更对象或数组时,旧值将与新值相同,因为它们的引用指向同一个对象/数组。Vue 不会保留变更之前值的副本。

如果想要更新官网给出的解决方案是使用方法,重新渲染发生时再次执行函数,但是这种在我的业务场景不行


解决方案:

  1. 计算具体值
相关推荐
光影少年5 分钟前
react的diff算法和vue的diff算法区别
vue.js·算法·react.js
向上的车轮16 分钟前
TypeORM ——TypeScript 生态的主流 ORM对比
javascript·typescript·typeorm
霍理迪23 分钟前
Vue列表过滤与排序
前端·javascript·vue.js
gCode Teacher 格码致知24 分钟前
Javascript提高:Node.js readline 模块 完整使用教程
javascript·node.js
蓝黑202031 分钟前
Vue的v-if和v-for放在同一个HTML元素里的坑
前端·javascript·vue.js
进击的雷神36 分钟前
展位号后缀清理、详情页JS数据提取、重试机制控制、地址字段重构——美国NPE展爬虫四大技术难关攻克纪实
javascript·爬虫·python·重构
转角羊儿38 分钟前
精灵图案例
开发语言·前端·javascript
spencer_tseng44 分钟前
secure-keyboard.js secure-keyboard.css
javascript·css
听风者一号1 小时前
cssMoudle生成器
前端·javascript·json
霍理迪1 小时前
Vue—其他指令及自定义指令
前端·javascript·vue.js