前言
@Watch应用于对状态变量的监听。如果开发者需要关注某个状态变量的值是否改变,可以使用@Watch为状态变量设置回调函数。
@Watch用于监听状态变量的变化,当状态变量变化时,@Watch的回调方法将被调用。@Watch在ArkUI框架内部判断数值有无更新使用的是严格相等(===),遵循严格相等规范。当在严格相等为false的情况下,就会触发@Watch的回调。
装饰器说明
语法说明
备注:
1.可监听所有的装饰器的状态变量。不允许监听常规变量。
2.装饰器的顺序 建议@State、@Prop、@Link等装饰器在@Watch装饰器之前。
3.@Watch方法在自定义组件的属性变更之后同步执行;
4.在第一次初始化的时候,@Watch装饰的方法不会被调用。
5.不建议在@Watch函数中调用async await,因为@Watch设计的用途是为了快速的计算,异步行为6.可能会导致重新渲染速度的性能问题。
避免无限循环
struct WatchPage {
@State @Watch('tryClick