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_ci22e41f4b71Sopenharmony_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当定义的状态变量类型中同时包含简单类型和对象引用数据类型时,需修改为只含有其中一种,如上述示例代码所示。