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

问题描述

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


原因分析:

先看vue官网示例:

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

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

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


解决方案:

  1. 计算具体值
相关推荐
之歆1 天前
DAY_12JavaScript DOM 完全指南(三):高级工程篇
开发语言·前端·javascript·ecmascript
来恩10031 天前
EL表达式应用
前端·javascript·vue.js
wh_xia_jun1 天前
Vue3 + Vitest 浏览器测试 从零开发指南
前端·javascript·vue.js
唐青枫1 天前
别再让 key 写成字符串:TypeScript keyof 从入门到实战
前端·javascript·typescript
天外飞雨道沧桑1 天前
TypeScript 中 omit 和 record 用法
前端·javascript·typescript
暗冰ཏོ1 天前
VUE面试题大全
前端·javascript·vue.js·面试
豹哥学前端2 天前
事件循环(Event Loop)深度解析:让你彻底搞懂 JS 的执行顺序
前端·javascript·面试
竹林8182 天前
用 wagmi v2 + Next.js 14 搞 NFT 交易市场前端:从合约调用失败到顺利上架,我踩了哪些坑
javascript·next.js
前端不开发2 天前
用一个 Bookmarklet(书签脚本),给任意网页挂一个可拖拽悬浮窗
前端·javascript
接着奏乐接着舞2 天前
【无标题】
开发语言·前端·javascript