微信小程序-setData()方法

Posted jet-strong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序-setData()方法相关的知识,希望对你有一定的参考价值。

一般setData方法多用于点击后改变页面信息或者刷新后与后台交互获取最新的信息

注意:

  1. 直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致
  2. 单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。

方法如下:

js:

Page({
  data: {
    text: init data,
    num: 0,
    array: [{text: init data}],
    object: {
      text: init data
    }
  },
  changeText: function() {
    // this.data.text = ‘changed data‘  // bad, it can not work
    this.setData({
      text: changed data
    })
  },
  changeNum: function() {
    this.data.num = 1
    this.setData({
      num: this.data.num
    })
  },
  changeItemInArray: function() {
    // you can use this way to modify a danamic data path
    this.setData({
      array[0].text:changed data
    })
  },
  changeItemInObject: function(){
    this.setData({
      object.text: changed data
    });
  },
  addNewField: function() {
    this.setData({
      newField.text: new data
    })
  }
})

wxml:

<view>{{text}}</view>
<button bindtap="changeText"> Change normal data </button>
<view>{{num}}</view>
<button bindtap="changeNum"> Change normal num </button>
<view>{{array[0].text}}</view>
<button bindtap="changeItemInArray"> Change Array data </button>
<view>{{object.text}}</view>
<button bindtap="changeItemInObject"> Change Object data </button>
<view>{{newField.text}}</view>
<button bindtap="addNewField"> Add new data </button>

 

以上是关于微信小程序-setData()方法的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序填坑,wx.request() 内调用setData()方法错误的解决办法

微信小程序报错 this.setData?

微信小程序报错解决方法TypeError: Cannot read property ‘setData‘ of undefined

微信小程序-setData()方法

「Krystalcsdn」的原创文章 微信小程序Cannot read property 'setData' of undefined问题解决 两种方法可用

「Krystalcsdn」的原创文章 微信小程序Cannot read property 'setData' of undefined问题解决 两种方法可用