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

问题描述

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


原因分析:

先看vue官网示例:

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

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

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


解决方案:

  1. 计算具体值
相关推荐
Devin_chen几秒前
单例模式渐进式学习指南
前端·javascript
吴声子夜歌17 分钟前
Vue3——计算属性和监听属性
前端·vue.js
阿民_armin24 分钟前
使用 IntersectionObserver + 哨兵元素实现长列表懒加载
前端·javascript·vue.js
不想说话的麋鹿1 小时前
「性能优化」虚拟列表极致优化实战:从原理到源码,打造丝滑滚动体验
前端·vue.js·面试
ouzz1 小时前
使用 react-canvas 制作一个 Figma 工具:从画布到编辑器
前端·javascript
颜酱1 小时前
语音合成与视觉模型api接入实现
前端·javascript·人工智能
一 乐2 小时前
工会管理|基于springboot + vue工会管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·工会管理系统
阿珊和她的猫2 小时前
使用 TypeScript 实现数组类型判断方法
javascript·typescript·状态模式
XTTX1102 小时前
Vue3+Cesium电子围栏效果
前端·javascript·vue.js
Ruihong3 小时前
你的 Vue 3 defineProps(),VuReact 会编译成什么样的 React?
vue.js·react.js·面试