为什么是this.setData() , 而不是this.data.XXX =

来源:8-3 setData的误区(重要)

russellxu

2019-03-07

为什么设置值的时候,需要用到setData()这个方法,而不是直接设置属性,是否和异步有关系?

写回答

2回答

宝慕林3319090

2019-03-13

//img.mukewang.com/szimg/5c88a53800012e6406621014.jpg

小程序的生命周期,只有调用了setData(就是里面的send Data过程),才会再次重新渲染页面。如果只是this.data只是更新了数据,但不会重新渲染页面。当然初次渲染页面时,用的是data里面的初始数据。第一次渲染之前会调用onload和onshow。也可以在这两个方法里setData,那就会覆盖data里的数据,作为初次渲染的数据。这是我的理解,你可以参考下。

1
0

7七月

2019-03-08

这个没有为什么,只有setData才能触发数据绑定重新渲染页面。老版本是可以this.data = 去做数据绑定的,很早就取消了这个。

0
0

纯正商业级微信小程序应用实战,全方位小程序特性讲解

真实数据的高质量小程序项目,学会直接工作

4791 学习 · 2133 问题

查看课程