微信小程序用setData修改数组或对象中的一个属性值

在page中有如下数组

 1 data: {
 2     info:[
 3       {
 4         name:"yuki",
 5         tou:"../img/head.jpg",
 6         zGong:130,
 7         gMoney:222222
 8       },
 9       {
10         name: "yuki",
11         tou: "../img/head.jpg",
12         zGong: 130,
13         gMoney:222222
14       },
15       {
16         name: "yuki",
17         tou: "../img/head.jpg",
18         zGong: 130,
19         gMoney:222222
20       },
21       {
22         name: "yuki",
23         tou: "../img/head.jpg",
24         zGong: 130,
25         gMoney:222222
26       },
27       {
28         name: "yuki",
29         tou: "../img/head.jpg",
30         zGong: 130,
31         gMoney:222222
32       }
33     ]
34   }

需求:把info[0].gMoney修改成1

一般情况下,我们会这样写

微信小程序用setData修改数组或对象中的一个属性值

 

但很明显,编辑器已经报错了。

 

解决方法如下:

  第一步:先用一个变量,把(info[0].gMoney)用字符串拼接起来。

  第二步:将变量写在[]里面即可。

 

具体写法如图:

1 onLoad: function () {
2       var that=this;
3       var up = "info[" + 0 + "].gMoney";//先用一个变量,把(info[0].gMoney)用字符串拼接起来
4       that.setData({
5         [up]:1
6       })
7   }

 

微信小程序用setData修改数组或对象中的一个属性值

上一篇:由于不支持的分享类型,无法分享到微信


下一篇:微信小程序开发之https从无到有