1e41f4b71Sopenharmony_ci# 3.1 release相对于3.1 beta变更详细说明 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci### 针对color.json中颜色值,增加合法性校验 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci针对color.json中颜色值,增加合法性校验,其校验规则如下: 6e41f4b71Sopenharmony_ci 7e41f4b71Sopenharmony_ci- 使用十六进制颜色码,格式如下: 8e41f4b71Sopenharmony_ci - #rgb:red(0-f) green(0-f) blue(0-f) 9e41f4b71Sopenharmony_ci - #argb:transparency(0-f) red(0-f) green(0-f) blue(0-f) 10e41f4b71Sopenharmony_ci - #rrggbb: red(00-ff) green(00-ff) blue(00-ff) 11e41f4b71Sopenharmony_ci - #aarrggbb: transparency(00-ff) red(00-ff) green(00-ff) blue(00-ff) 12e41f4b71Sopenharmony_ci- 使用$引用应用中已定义的资源,格式如下: 13e41f4b71Sopenharmony_ci - $color:xxx 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci**变更影响** 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci不符合上述校验规则,将在编译时报错。 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci**关键的接口/组件变更** 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci无 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci### 状态变量多种数据类型声明使用限制。 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci状态变量比如@State、@Provide、 @Link和@Consume等,定义数据类型时,只能同时由简单数据类型或对象引用数据类型其中一种构成。 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci示例: 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci```ts 30e41f4b71Sopenharmony_ci@Entry 31e41f4b71Sopenharmony_ci@Component 32e41f4b71Sopenharmony_cistruct Index { 33e41f4b71Sopenharmony_ci //错误写法: @State message: string | Resource = 'Hello World' 34e41f4b71Sopenharmony_ci @State message: string = 'Hello World' 35e41f4b71Sopenharmony_ci 36e41f4b71Sopenharmony_ci build() { 37e41f4b71Sopenharmony_ci Row() { 38e41f4b71Sopenharmony_ci Column() { 39e41f4b71Sopenharmony_ci Text(`${ this.message }`) 40e41f4b71Sopenharmony_ci .fontSize(50) 41e41f4b71Sopenharmony_ci .fontWeight(FontWeight.Bold) 42e41f4b71Sopenharmony_ci } 43e41f4b71Sopenharmony_ci .width('100%') 44e41f4b71Sopenharmony_ci } 45e41f4b71Sopenharmony_ci .height('100%') 46e41f4b71Sopenharmony_ci } 47e41f4b71Sopenharmony_ci} 48e41f4b71Sopenharmony_ci``` 49e41f4b71Sopenharmony_ci 50e41f4b71Sopenharmony_ci**变更影响** 51e41f4b71Sopenharmony_ci 52e41f4b71Sopenharmony_ci当定义的状态变量类型中同时包含简单类型和对象引用数据类型时,编译报错提示不支持。 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ci**关键的接口/组件变更** 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci当定义的状态变量类型中同时包含简单类型和对象引用数据类型时,需修改为只含有其中一种,如上述示例代码所示。