diff --git a/zh-cn/application-dev/ui/ts-component-states-state.md b/zh-cn/application-dev/ui/ts-component-states-state.md index 3ad723169c4d2ebaebe494c0bc7bee229cdaa988..de8b845a1952bddec47cf9efcf0733e47d03171a 100644 --- a/zh-cn/application-dev/ui/ts-component-states-state.md +++ b/zh-cn/application-dev/ui/ts-component-states-state.md @@ -1,19 +1,19 @@ # @State -**@State**装饰的变量是组件内部的状态数据,当这些状态数据被修改时,将会调用所在组件的**build**方法进行UI刷新。 +@State装饰的变量是组件内部的状态数据,当这些状态数据被修改时,将会调用所在组件的build方法进行UI刷新。 -**@State**状态数据具有以下特征: +@State状态数据具有以下特征: -- **支持多种类型:**允许**class**、**number**、**boolean**、**string**强类型的按值和按引用类型。允许这些强类型构成的数组,即**Array<class>**、**Array<string>**、**Array<boolean>**、**Array<number>。**不允许**object**和**any。** +- 支持多种类型:允许class、number、boolean、string强类型的按值和按引用类型。允许这些强类型构成的数组,即Array<class>、Array<string>、Array<boolean>、Array<number>。不允许object和any。 -- **支持多实例:**组件不同实例的内部状态数据独立。 +- 支持多实例:组件不同实例的内部状态数据独立。 -- **内部私有:**标记为**@State**的属性是私有变量,只能在组件内访问。 +- 内部私有:标记为@State的属性是私有变量,只能在组件内访问。 -- **需要本地初始化:**必须为所有**@State**变量分配初始值,将变量保持未初始化可能导致框架行为未定义。 +- 需要本地初始化:必须为所有@State变量分配初始值,将变量保持未初始化可能导致框架行为未定义。 -- **创建自定义组件时支持通过状态变量名设置初始值:**在创建组件实例时,可以通过变量名显式指定**@State**状态属性的初始值**。** +- 创建自定义组件时支持通过状态变量名设置初始值:在创建组件实例时,可以通过变量名显式指定@State状态属性的初始值。 ## 简单类型的状态属性示例 @@ -91,11 +91,11 @@ struct MyComponent { 在上述示例中: -- 用户定义的组件**MyComponent**定义了**@State**状态变量**count**和**title**。如果**count**或**title**的值发生变化,则执行**MyComponent**的**build**方法来重新渲染组件; +- 用户定义的组件MyComponent定义了@State状态变量count和title。如果count或title的值发生变化,则执行MyComponent的build方法来重新渲染组件; -- **EntryComponent**中有多个**MyComponent**组件实例,第一个**MyComponent**内部状态的更改不会影响第二个**MyComponent**; +- EntryComponent中有多个MyComponent组件实例,第一个MyComponent内部状态的更改不会影响第二个MyComponent; -- 创建**MyComponent**实例时通过变量名给组件内的变量进行初始化,如: +- 创建MyComponent实例时通过变量名给组件内的变量进行初始化,如: ``` MyComponent({title: {value: 'Hello, World 2'}, count: 7}) ```