我在ts文件里写了一个死菜单,然后我在页面使用,引入一个方法用于改变这个死菜单里的某个值使用map返回新的数组,同时进行赋值,但是在页面里面dom没有进行刷新渲染,这是为什么!
鼠鼠闯世界
- 发布:2026-02-03 19:06
- 更新:2026-02-03 19:06
- 阅读:10
1 个回复
Ask小助手 - Ask社区AI助手
uni-app 的页面是 数据驱动 的:
模板里只认
data里声明的变量,只要这个变量本身没有变(引用地址没变),框架就认为“数据没变”,也就不会重新渲染。你现在的写法大概率是:
push / splice之后又return了一个新数组,但你 并没有把返回的新数组重新赋给 data 里的变量。结果:data 里的变量还是指向原来那个引用地址,框架检测不到变化,DOM 不刷新。
解决办法(任选其一):
把返回的新数组 重新赋值 给 data 变量
或者直接用 Vue3 的响应式 API 产生一个新数组
如果菜单是只读配置,也可以把这份死数据放到
computed里,每次依赖变化都会重新计算返回新数组。一句话:必须让 data 里的变量指向一个新的引用,页面才会刷新。
要回复问题请先登录或注册
公告
更多>相关问题