HarmonyOS开发——编译错误集锦(升级v4.x版本后的ArkTSCheck)
1. Array literals must contain elements of only inferrable types (arkts-no-noninferrable-arr-literals)
修改前:
let permissionList = [ { name: '设备信息', value: '用于分析设备的续航、通话、上网、SIM卡故障等' }, { name: '麦克风', value: '用于反馈问题单时增加语音' }, { name: '存储', value: '用于反馈问题单时增加本地文件附件' } ]
修改后:
class PermissionItem { name?: string value?: string } let permissionList: PermissionItem[] = [ { name: '设备信息', value: '用于分析设备的续航、通话、上网、SIM卡故障等' }, { name: '麦克风', value: '用于反馈问题单时增加语音' }, { name: '存储', value: '用于反馈问题单时增加本地文件附件' } ]
2. Argument of type 'number' is not assignable to parameter of type 'string | Resource'. <ArkTSCheck>
修改前:
Text(item.id).fontSize(16).fontWeight(FontWeight.Bold).width('30%')
修改后:
Text(item.id.toString()).fontSize(16).fontWeight(FontWeight.Bold).width('30%')
即4.0版本起,需严格执行ArkTS的规则,item.id是number类型,Text组件需要string类型的内容,所以需要转换。
个人原创博客,转载请注明来源地址:https://www.cnblogs.com/xyyt