Vue this.$set()更新数组的数据、table的数据,视图不更新

1、问题

需要更新列表的数组对象的值,经过跟踪,数据已改,视图却未更新

有时有效,有时无效代码:

//更新列表数据值
handleChange(){
    var list = this.list;
    for(let i=0;i<list .length;i++){
       let item = list[i];
       item.status = 'L';//改为加载
       this.$set(this.list,i,item);
    }
}

2、解决办法

重新拷贝下对象

//更新列表数据值
handleChange(){
    var list = this.list;
    for(let i=0;i<list .length;i++){
       let item = list[i];
       item.status = 'L';//改为加载
       this.$set(this.list,i,this.copyData(item));
    }
}
//拷贝不会改变值
copyData(param){
	var obj = JSON.parse(JSON.stringify(param));
	return obj;
}

 现在的页面,视图已刷新

3、总结

有知道原因的大佬欢迎留言在这篇文章的评论区,共勉!

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值