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

问题描述

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


原因分析:

先看vue官网示例:

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

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

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


解决方案:

  1. 计算具体值
相关推荐
不简说11 小时前
JS 代码技巧 vol.8 — 20 个函数式编程实战,把 if/else 拍扁的骚操作
前端·javascript·面试
Cobyte11 小时前
模板 DSL 解析器中的状态机设计
前端·javascript·vue.js
软件开发技术深度爱好者13 小时前
小学英语单词魔法学园HTML5实现
javascript·html5·英语学习
勉灬之13 小时前
Next.js + Prisma 跨平台部署踩坑记
开发语言·javascript·ecmascript
糖果店的幽灵13 小时前
langgraph分支之 - 动态分支(Dynamic Branch)
java·前端·javascript·人工智能·langgraph
Bad_Shepherd13 小时前
vue-element-plus-admin添加自定义svg图标,并且图标选择组件可选自定义图标
vue.js·elementui·前端框架
这是个栗子13 小时前
前端开发中的常用工具函数(九)
开发语言·javascript·ecmascript·at
Revolution6115 小时前
一段 JavaScript 代码执行时,到底发生了什么
前端·javascript
会周易的程序员16 小时前
Mermaid Renderer:一款的图表可视化小工具
前端·vue.js·流程图·mermaid
To_OC1 天前
LC 131 分割回文串:刚学回溯时,我连怎么切字符串都想不明白
javascript·算法·leetcode