💡
原文中文,约3300字,阅读约需8分钟。
📝
内容提要
@Track是一个用于状态变量UI更新的属性装饰器。被@Track装饰的属性变化时,仅触发相关UI更新,避免冗余刷新。未标记的属性不能在UI中使用,可能导致错误。建议开发者避免混用不同类型的class对象。
🎯
关键要点
- @Track是用于状态变量UI更新的属性装饰器。
- 被@Track装饰的属性变化时,仅触发相关UI更新,避免冗余刷新。
- 未标记的属性不能在UI中使用,可能导致错误。
- 建议开发者避免混用不同类型的class对象。
- 从API version 11开始,@Track装饰器支持在ArkTS卡片中使用。
- 装饰器参数为无,可装饰的变量为class对象的非静态成员属性。
- @Track没有深度观测功能,使用它可避免冗余刷新。
- 示例中,@Track装饰的属性变化时,相关UI节点会更新,而未装饰的属性则会导致冗余刷新。
- 不能在UI中使用非@Track装饰的属性,错误使用将导致JSCrash。
- 可在非UI中使用非@Track属性,如事件回调函数、生命周期函数中。
- 使用@Track和自定义组件时,@Track属性变化会导致组件重新渲染。
➡️