vue3里使用改变了一个reactive定义的数组。页面显示的地方并没有改变

let voiceMoodList=reactive();
voiceMoodList=currentVoiceMoodList;

使用直接赋值的方式给voiceMoodList但是发现页面并没有改变。并且监听voiceMoodList的地方也没有触发。

 原因:Vue 的响应式系统是通过属性访问进行追踪的,因此我们必须始终保持对该响应式对象的相同引用。这意味着我们不可以随意地“替换”一个响应式对象,因为这将导致对初始引用的响应性连接丢失(参考:响应式基础 | Vue.js

解决办法可以是我们把这个reactive的替换成ref

猜你喜欢

转载自blog.csdn.net/qq_33769914/article/details/129817355