收藏
回答

如何使用setData修改数组或对象中的某一个值

问题模块
API和组件

newnum: [

       { 'ske5': 12 },

        { 'ske6': 162 }

      ]

请问一下,我怎么把 'ske5' 的值改能 13 ?


下面是我写的,输出的结果都是12,是错误的

     console.log(this.data.newnum[0]['ske5'])

      this.setData({

        [this.data.newnum[0]['ske5']]: 13

      })

      console.log(this.data.newnum[0]['ske5'])


正确方式应该怎么写?谢谢!

最后一次编辑于  2017-09-21  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • bin
    bin
    2017-09-21

    var ske5= this.data.newnum[0].ske5;

    console.log(ske5);

    var ske5Obj = "newnum[0].ske5";

    var changeObj={};

    changeObj[ske5Obj]=13;

    this.setData(changeObj)

    var ske5 = this.data.newnum[0].ske5;

    console.log(ske5);


    2017-09-21
    赞同
    回复
  • 追小命
    追小命
    2017-09-21

    我通常的做法:


    this.data.newnum['ske5'] = 13

    this.setData({newnum: this.data.newnum})


    2017-09-21
    赞同
    回复