微信小程序 报错:Setting data field "xxx" to undefined is invalid

753 阅读1分钟
问题描述

微信公众平台报错如下:将数据字段‘xxx’设置成未定义、是无效的。 紧接着看看报错代码:

  const res = {
      age: 20,
      sex: 'female'
    }
    const { name } = res
    this.setData({
      name: name
    })

为什么会出现这个警告呢?
原因: 通过网络请求的数据、当返回的数据字段不存在该xxx变量时,此时xxx就是undefined, 若使用setData进行赋值,那么就会出现这种警告。

解决方案: 判断xxx是否存在。

解决方案

// 借助三元表达式
this.setData({
    xxx: xxx? xxx: null
})