天天看点

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

在page中有如下数组

data: {
    info:[
      {
        name:"yuki",
        tou:"../img/head.jpg",
        zGong:130,
        gMoney:222222
      },
      {
        name: "yuki",
        tou: "../img/head.jpg",
        zGong: 130,
        gMoney:222222
      },
      {
        name: "yuki",
        tou: "../img/head.jpg",
        zGong: 130,
        gMoney:222222
      },
      {
        name: "yuki",
        tou: "../img/head.jpg",
        zGong: 130,
        gMoney:222222
      },
      {
        name: "yuki",
        tou: "../img/head.jpg",
        zGong: 130,
        gMoney:222222
      }
    ]
  }
           

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

解决方法如下:

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

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

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