问题:
微信小程序渲染一个列表,列表中有包含按钮。
按钮状态有由列表特定item
的一个属性决定。
需求是 点击按钮,触发操作,同时改变其状态。
尝试了n次才找到办法,记录一下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| Page({ data: { match_id: 0, teams: [],
}, follow: function(e){ var that=this var team_id = e.currentTarget.dataset.team_id var num = e.target.id wx.request({ url: app.globalData.server_url + 'team/follow/', method: "POST", data:{ openid: app.globalData.openid, teamid: team_id }, success(res){ that.setData({ ['teams[' + num + '].mark'] : !that.data.teams[num].mark }) } }) }, })
|
如上面代码所示:
在this.setData({})
中可以使用[str]
的形式指定要改变元素的地址
另外"变量名":data
则可以使用变量作为被改变元素地址
参考资料:
https://blog.csdn.net/fxjzzyo/article/details/79263198