for in循环中,如何根据索引号使用this.setData()?
发布于 6 年前 作者 xiuying25 2661 次浏览 来自 官方Issues

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,
        });

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

4 回复
for (let iin this.data.AccountInfo) {
    if (i === 'Remarks') {
        this.setData({

            ['AccountInfo.'+i]: value

        });
    }
}

this.setData({

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

})

var i = ‘Remarks

this.setData({

    [‘AccountInfo.’+i]: value

});

没看明白问题是什么

回到顶部