vue 给标签添加data属性_vue2给data的数据添加值的时候为什么push可以绑定数据,但是直接赋值不可以?...

data属性:a: {},b: [],

在created的时候从服务器获取数据,需要填充到a和b中,因为数据需要过滤所以不能直接赋值,for(let key in response.data.list){    if(response.data.list[key].type == 2){        this.a[key] = response.data.list[key]

}

}

修改a的值时,视图不会刷新。

看了文档说是因为a的属性中没有key,新增的属性要$set。

但是,对b的操作有两种结果。

这样操作:for(let key in response.data.list){    if(response.data.list[key].type == 1){        this.b.push(response.data.list[key])

}

}

修改b的值,视图会刷新。

如果是这样:

let index = 0;

for(let key in response.data.list){    if(response.data.list[key].type == 1){

this.b[index] = response.data.list[key]        index ++

}

}

修改b的值,视图不会刷新。

为什么push的时候不需要$set?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值