收藏
回答

求指教,怎样更新数组内指定的变量


如图,我想更新第一个数组中,select更新为yes,请问 this.setData 里应该怎样写,谢谢!!!


最后一次编辑于  2018-06-11  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

3 个回答

  • 谁谁谁
    谁谁谁
    2018-06-13


    data: {

        list:[

            {

            name:1

            },

            {

            name:2

            },

            {

            name:3

            }

        ]

    },


    onLoad: function () {

        let index=1

        this.setData({

             [`list[${index}].name`]: 10086

        })

    },



    2018-06-13
    赞同 2
    回复 2
    • 约定
      约定
      2018-06-13

      你这是data下直接list,如图,data和lists中间还隔了一级,怎么写呢

      2018-06-13
      回复
    • 谁谁谁
      谁谁谁
      2018-06-13

      let index = 0

      this.setData({

         [`teamBlist.lists[${index}].select`]: "深圳等下又要下暴雨了哦"

      })


      2018-06-13
      回复
  • 木杉丶
    木杉丶
    2018-06-11

    你先拿到返回的数据lists设定一个变量,然后把这个数组里的第一个值变一下就好了然后再保存就变了

    var lists_data = lists

    lists_data[0].select = 'yes'


    that.setData({

    lists_data : lists_data

    });

    数组里第一个的值肯定变了



    2018-06-11
    赞同 1
    回复 1
    • 约定
      约定
      2018-06-11

      更新成功了,但是绑定的值wxml没有更新,大神,能加Q,指教下吗,295697501

      2018-06-11
      回复
  • 卢霄霄
    卢霄霄
    2018-06-11

    this.setData({'teamBlist.list[0].select':'yes'})

    题外话:第一次见这么用布尔值的。。

    2018-06-11
    赞同
    回复 4
    • 木杉丶
      木杉丶
      2018-06-11

      反正也没见他说是要弄布尔值,也可能只是弄成字符,所以。。。。

      2018-06-11
      回复
    • 卢霄霄
      卢霄霄
      2018-06-11回复木杉丶

      嗯。。这哥们得抓紧了,世界杯没几天就开赛了

      2018-06-11
      1
      回复
    • 知晓
      知晓
      2018-06-11回复卢霄霄

      哈哈哈

      2018-06-11
      回复
    • 约定
      约定
      2018-06-11

      哎……脑袋现在卡起啦

      2018-06-11
      回复