diff --git a/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-universal-component-size-change-event.md b/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-universal-component-size-change-event.md index 46f9c5dbf6ca449a2e4c64257715478e6cbaf542..749b7c09212d474b1ba057782183e7bfeb3d0753 100644 --- a/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-universal-component-size-change-event.md +++ b/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-universal-component-size-change-event.md @@ -16,7 +16,11 @@ onSizeChange(event: SizeChangeCallback): T >**说明:** > ->该接口在布局发生变化时触发,由于计算精度的关系,其返回值可能与真实物理尺寸存在细微的差异。 +> 1. 该接口在布局发生变化时触发,由于计算精度的关系,其返回值可能与真实物理尺寸存在细微的差异。 +> +> 2. onSizeChange是布局过程中触发的同步回调,在里面直接改变状态变量存在被带入动画闭包的风险。 +> 原因是,动画会将动画前的布局和动画闭包后的布局进行对比,当onSizeChange的回调在动画前的布局中被同步触发时,onSizeChange回调内做的改变和动画闭包的改变会一起带入动画。 +> 可以通过在onSizeChange里使用delay为0的[setTimeOut](../../../reference/common/js-apis-timer.md#settimeout)或[postFrameCallback](../../../reference/apis-arkui/js-apis-arkui-UIContext.md#postframecallback12)将UI处理逻辑抛出,使其异步执行以避免此类问题。 **卡片能力:** 从API version 12开始,该接口支持在ArkTS卡片中使用。