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

问题描述

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


原因分析:

先看vue官网示例:

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

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

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


解决方案:

  1. 计算具体值
相关推荐
拾光拾趣录1 分钟前
虚拟DOM超详细流程
前端·vue.js·dom
拾光拾趣录2 分钟前
Vue 项目监听页面 Hash 变化
前端·vue.js·vue-router
梨子同志3 分钟前
Vue Options API vs Composition API
前端·vue.js
在钱塘江4 分钟前
《你不知道的JavaScript-上卷》第一部分-附录C-笔记-this词法
前端·javascript
胡gh4 分钟前
JavaScript 中的闭包、防抖与节流:让你彻底搞懂它们的作用和应用场景
前端·javascript·node.js
Mintopia24 分钟前
Three.js 中的噪声与图形变换:一场数字世界的舞蹈
前端·javascript·three.js
Mintopia29 分钟前
计算机图形学漫游:从像素到游戏引擎的奇幻之旅
前端·javascript·计算机图形学
梨子同志1 小时前
Vue v-model 指令详解
前端·vue.js
Tina_晴1 小时前
【基础篇】Promise初体验+案例分析(上)
前端·javascript·面试
7ayl1 小时前
闭包
javascript