1# ArkUI子系统Changelog 2 3## cl.arkui.1 当使用自定义组件名和内置属性重名时编译报错变更 4 5**访问级别** 6 7公开接口 8 9**变更原因** 10 11当使用自定义组件名和内置属性重名时,编译会根据指定的白名单进行拦截报错,如果白名单中不存在,编译就拦截不到,导致编译转换后的产物出现问题。 12 13**变更影响** 14 15该变更为不兼容变更。 16 17举例说明,执行以下用例: 18 19```ts 20@Entry 21@Component 22struct enableAnalyzer { 23 build() { 24 Canvas() 25 .enableAnalyzer((true)) 26 } 27} 28``` 29 30变更前: 31不在白名单的内置组件属性与自定义组件重名时,编译没有拦截报错,导致运行时crash。 32 33变更后: 34在白名单的内置组件属性与自定义组件重名时,编译拦截报错。 35 36 37 38**起始API Level** 39 40API 10 41 42**变更发生版本** 43 44从OpenHarmony SDK 5.0.2.52开始。 45 46**变更的接口/组件** 47 48ArkUI 内置组件属性API。 49 50**适配指导** 51 52自定义组件名和内置组件属性重名时,编译报错,修改自定义组件名为其他非内置组件属性名即可解决。 53 54修改前: 55 56自定义组件enableAnalyzer和Canvas的enableAnalyzer重名。 57 58```ts 59@Entry 60@Component 61struct enableAnalyzer { 62 build() { 63 Canvas() 64 .enableAnalyzer() 65 } 66} 67``` 68 69修改后: 70 71将自定义组件名改为任意不和内置组件重名的名称,如EnableAnalyzerComp。 72 73```ts 74@Entry 75@Component 76struct EnableAnalyzerComp { 77 build() { 78 Canvas() 79 .enableAnalyzer() 80 } 81} 82```