如何用setData修改data中的数组?
发布时间:2018-02-06 13:42:09
wxml:
<view wx:for="{{reward}}" wx:for-item="i" catchtap="getReward">
<view wx:if="{{i.status==2}}">
<image src="{{i.img}}"></image>
<text>{{i.name}}</text>
</view>
</view>
js:
1、初始的data数据
Page({
data:{
reward:[{
name:"hi",
img:"../../img/success.png",
status:1
},
{
name:"hello",
img:"../../img/success.png",
status:2
}]
}
})
2、修改data中reward的status
①. 用[]表示的变量改变数组里的值
for (let i = 0; i < num; i++) {
var index = "reward[" + i + "].status";
this.setData({
[index]: 2 //用[]表示的变量
});
console.log(this.data.reward[i], "reward[" + i + "]");
}
②. 用""表示数组里的值
this.setData({
"reward[0].status": 2 //用""表示数组里的值
});