setData 机制
说明:
- Object 以的形式表示,将
this.data
中的key
对应的值改变成value
;
可以以数据路径的形式给出,支持改变数组中的某一项或对象的某个属性,如array[2].message
、a.b.c.d
,并且不需要在this.data
中预先定义; - 直接修改而不调用
this.setData
是无法改变页面的状态的,还会造成数据不一致; - 请不要把
data
中任何一项的value
设为,否则将会有一些潜在问题出现; - data 的键名必须遵守 camelCase(驼峰式)的命名规范,不得使用 kebab-case(短横线隔开式)规范。
代码示例
- JS
连续使用 setData 来改变界面的方法也可以达到动画的效果。这样可以任意地改变界面,但通常会产生较大的延迟或卡顿,甚至导致小程序僵死。此时可以通过将页面的 setData 改为自定义组件中的 setData 来提升性能。下面的例子是使用 setData 来实现秒表动画的示例。
代码示例
- SWAN
逻辑层在设置数据后可执行函数。
- JS