harmony 鸿蒙ArkCompiler子系统Changelog
ArkCompiler子系统Changelog
cl.ArkCompiler.1 ArkTS语法规则变更
从OpenHarmony SDK版本4.1.5.5起,以下ArkTS语法规则发生变更。
移除规则
规则arkts-no-decorators-except-arkui
、arkts-no-side-effects-imports
和arkts-no-regexp-literals
被移除。
降级规则
规则arkts-no-globalthis
和arkts-no-classes-as-obj
等级降为警告,不再阻塞工程编译。
规则arkts-no-func-apply-bind-call
被拆分成以下两条:
1. arkts-no-func-apply-call
,等级:错误
2. arkts-no-func-bind
,等级:警告
相比于之前版本,报错代码和报错总数不变。
放宽规则
规则arkts-identifiers-as-prop-names
放宽,支持属性名为字符串字面量或枚举中的字符串值。
以下代码不再报错。
enum Test {
A = 'aaa',
B = 'bbb'
}
let obj: Record<string, number> = {
[Test.A]: 1, // 枚举中的字符串值
[Test.B]: 2, // 枚举中的字符串值
['value']: 3 // 字符串字面量
}
变更影响
开发者无需适配代码,无兼容性影响。
cl.ArkCompiler.2 三方包ts检查变更
访问级别
其它
变更原因
oh_modules目录下的三方包中的代码应符合ts语法规范。以前oh_modules目录下不符合ts语法规范的代码会报错,但由于代码实现的原因,从4.0.10.3版本开始未报错。目前该问题已修复,oh_modules目录下不符合ts语法规范的代码现在会报错。
变更发生版本
OpenHarmony SDK 4.1.5.5
变更影响
需要使用ts语法正确的三方包,若在三方包内添加了不符合ts语法规范的代码则编译会报错。
如在三方包代码中加入如下代码:
let a: string = 1;
编译时会报错:
Type 'number' is not assignable to type 'string'.
适配指导
使用符合ts语法规范的三方包,不能往三方包中添加不符合ts语法规范的代码。
你可能感兴趣的鸿蒙文章
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
7、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦