1.watch监听到数据的变化但页面没有刷新
在数据改动的代码后加 this.$forceUpdate();
添加this.$forceUpdate();进行强制渲染,效果实现。因为数据层次太多,render函数没有自动更新,需手动强制刷新。
2.没有监听到数据的变化
例如:改变了数组中的某一项或者改变了对象中的某个元素时,监听则未生效。
数组若要触发监听,下面方法即可触发
如:splice(),push() 等js方法
当然了,也可以使用vue中的方法 this.$set(object, index, new)
this.$set()方法是vue自带的可对数组和对象进行赋值,并触发监听的方法。
第一个参数为你要改变的数组或对象
第二个参数为下标,或者元素名称
第三个参数为新值
例:
this.$set(
_this.answerList[index],//对象或数组
'imageUrlString',//对象的某个属性
result,
);