问题描述:
对于数组来说,当我们正常赋值的时候会出现一种情况,就是明明控制台输出时显示数组数值已经变化,但是页面并没有进行渲染变化。这是因为数组不能检测到变化。

//以下两种都是数组没办法检测到变化的赋值方式
var arr=[a,b];
arr[0]=c;
console.log(arr); //控制台输出[c,b],但是页面并不会渲染
arr.length=3;  //同理页面依然不能响应

正确的赋值方式

//方法一
this.$set(this.arr,index,newValue); //arr=需要更新的数组,index=需要更新值的底标,newValue=更新的值
//方法二
this.arr.splice(indexOfValue,1,newValue); // indexOfValue=需要更换的底标,newValue=更新的值

完结撒花~

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐