data:{
type:'one',
form: {
name: '',
sex: '1',
phone: ''
}
}
如上述代码,如果我要改变type和form的值,我们会使用
this.setData({
form:{name:'a',sex:'1',phone:'xxxx'},
type:'two'
})
但若只想改变form里的name,可以这样:
let formName = "form.name"
this.setData({
[formName]: 'aa'
})
我的理解是括号里相当于 this的值,写form时相当于给this.form赋值,而this.form等价于this['form'],所以用字符串拼接的形式解决这个问题,亲测有效。