微信小程序 setData 只修改对象中的一个值,其他值保持不变

Posted 养猪至富

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 setData 只修改对象中的一个值,其他值保持不变相关的知识,希望对你有一定的参考价值。

微信小程序  setData  只修改对象中的一个值,其他值保持不变

 

 

对象数据:

  data: {
    userinfo: {
      id: 1,
      nickname: "xxx",
      phone: "xxxxx",
      sex: "男",
      age: 0,
      avatar: "xxxx",
    }
  },

 

 

这种方法,会让丢失对象中的其他属性,代码如下:

 this.setData({
          userinfo:{
            avatar: xxx
          }        
        })
//最后userinfo中只有avatar属性了,其他值没了

 

使用下面这种方法即可解决:

 this.setData({
          [‘userinfo.avatar‘]: aaaa
        })

 

这样就达到,只修改其中一个值,其他值保持不变,

若想修改多个值,形式类似,如:

  this.setData({
          [‘userinfo.avatar‘]: aaa,
          [‘userinfo.age‘]: bbbb,
          [‘userinfo.nickname‘]:ccccc,
        })

 

以上是关于微信小程序 setData 只修改对象中的一个值,其他值保持不变的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序用setData修改数组或对象中的一个属性值

微信小程序this.setData修改对象中某个属性的值

微信小程序中用setData修改一个对象的属性值

微信小程序setData的使用,通过[...]进行动态key赋值

微信小程序如何使用setData修改data中子对象的属性值

微信小程序之this.setData