收藏
回答

for in循环中,如何根据索引号使用this.setData()?

data中的数据:

data:{

  AccountInfo: {

      Company: null,
      UserName: null,
      PinyinName: null,
      LoginDate: null,

      Remarks: null,

  }

},


代码块使用:

for (let i in this.data.AccountInfo) {
    if (i === 'Remarks') {
        this.setData({
            AccountInfo[i]: value,
        });
    }
}


使用想法:

类似于for循环遍历数组,根据数组的下标来修改对于下标的值;

在小程序中,使用for in 循环,遍历AccountInfo对象的属性,根据属性 key ,通过this.setData()修改页面数据

请问,在this.setData()中,key如何写????

this.setData({
            AccountInfo[i]: value,
        });

这种写法报错,请高手指教。

最后一次编辑于  2019-11-14
回答关注问题邀请回答
收藏

3 个回答

  • 王志鹏
    王志鹏
    2019-11-14
    for (let iin this.data.AccountInfo) {
        if (i === 'Remarks') {
            this.setData({

                ['AccountInfo.'+i]: value

            });
        }
    }


    2019-11-14
    赞同 1
    回复 1
    • ZainIoT
      ZainIoT
      2019-11-14
      谢谢。学习了👍😘
      2019-11-14
      回复
  • 刘科丰🐳
    刘科丰🐳
    2019-11-14

    this.setData({

        [`AccountInfo[${i}]`]:value

    })

    2019-11-14
    赞同 1
    回复 1
    • ZainIoT
      ZainIoT
      2019-11-14
      谢谢。学习了👍😘
      2019-11-14
      回复
  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-11-14

    var i = 'Remarks'

    this.setData({

        ['AccountInfo.'+i]: value

    });

    2019-11-14
    赞同 1
    回复 1
    • ZainIoT
      ZainIoT
      2019-11-14
      谢谢。学习了👍😘
      2019-11-14
      回复
登录 后发表内容
问题标签