3.1 release相对于3.1 beta变更详细说明
针对color.json中颜色值,增加合法性校验
针对color.json中颜色值,增加合法性校验,其校验规则如下:
- 使用十六进制颜色码,格式如下:
- #rgb:red(0-f) green(0-f) blue(0-f)
- #argb:transparency(0-f) red(0-f) green(0-f) blue(0-f)
- #rrggbb: red(00-ff) green(00-ff) blue(00-ff)
- #aarrggbb: transparency(00-ff) red(00-ff) green(00-ff) blue(00-ff)
- 使用$引用应用中已定义的资源,格式如下:
- $color:xxx
变更影响
不符合上述校验规则,将在编译时报错。
关键的接口/组件变更
无
状态变量多种数据类型声明使用限制。
状态变量比如@State、@Provide、 @Link和@Consume等,定义数据类型时,只能同时由简单数据类型或对象引用数据类型其中一种构成。
示例:
@Entry
@Component
struct Index {
//错误写法: @State message: string | Resource = 'Hello World'
@State message: string = 'Hello World'
build() {
Row() {
Column() {
Text(`${ this.message }`)
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
}
.height('100%')
}
}
变更影响
当定义的状态变量类型中同时包含简单类型和对象引用数据类型时,编译报错提示不支持。
关键的接口/组件变更
当定义的状态变量类型中同时包含简单类型和对象引用数据类型时,需修改为只含有其中一种,如上述示例代码所示。