转载于:blog.csdn.net/wkj001/arti…
this.setData(): 用来更新页面的
this.data():用来获取页面data对象的
this.setData 函数用于将数据从逻辑层发送到视图层,同时改变对应的 this.data 的值。
注意:
- 直接修改 this.data 无效,无法改变页面的状态,还会造成数据不一致。
- 单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。
总结:this.data与this.setData()的关系就是this.setData()里面存储的是this.data的副本,而界面是从this.setData()里面托管的this.data的副本取数据的
所以直接更改this.data并不会直接更新页面,因为这个时候的this.setData()里的副本还没有更新
如果只设置data或者this.data的数据,不进行setData设置,页面是无法更新的,因为setData中的副本数据没有进行更新,导致页面没有更新
直接修改this.data,而不调用this.setData(),是无法改变当前页面的状态的,会导致数据不一致
this.setData()的工作原理: