开发微信小程序时,使用setData修改data中数据时,针对各种情况的解决方案如下:
//示例data:data:{code:'9527',baseInfo:{name:'夏尔',age:19},family:[{name:'大头爸爸',age:'46'},{name:'美丽妈妈',age:'45'}]}一、直接修改data的某个属性
this.setData({code:'007'})二、修改data里的数组或对象的属性
this.setData({'baseInfo.age':24})三、根据条件有选择性的改变(重点)
假设某种情况要根据条件改变某个特定值的某个属性,那么就需要先将要改变的属性转换成字符串,再用中括号括起来就可以了。
//此例假设改变对应index的某个属性值var temp_str='family['+index+'].age';this.setData({[temp_str]:44});之前公司开发小程序的时候遇到的这个问题,找官方文档反正没看见,可能是我眼瞎,参考了【一丝墨】的文章,原文链接:https://blog.csdn.net/yisimo/article/details/79453896。













