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

问题描述

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


原因分析:

先看vue官网示例:

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

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

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


解决方案:

  1. 计算具体值
相关推荐
拾光拾趣录16 分钟前
虚拟DOM
前端·vue.js·dom
爱学习的茄子16 分钟前
JavaScript事件循环深度解析:理解异步执行的本质
前端·javascript·面试
1024小神17 分钟前
cocos游戏开发中多角色碰撞,物理反弹后改变方向的实现逻辑
前端·javascript
ruanhongbiao18 分钟前
饿了么el-upload上传组件报错:TypeError: ***.upload.addEventListener is not a function
javascript·elementui
_一两风20 分钟前
JS执行机制-event loop
javascript
止观止20 分钟前
JavaScript对象创建9大核心技术解析
开发语言·javascript·ecmascript
1024小神21 分钟前
cocos游戏开发中,如何制作一个空气墙
前端·javascript
爱编程的喵21 分钟前
深入理解JavaScript事件循环机制:从同步到异步的完整解析
前端·javascript
合作小小程序员小小店21 分钟前
web网页,在线%食谱推荐系统%分析系统demo,基于vscode,uniapp,vue,java,jdk,springboot,mysql数据库
vue.js·spring boot·vscode·spring·uni-app
202622 分钟前
11. vite打包优化
前端·javascript·vite