微信小程式 如何用setData修改data中的陣列?
阿新 • • 發佈:2019-01-10
如何用setData修改data中的陣列?
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 //用""表示數組裡的值
});