HarmonyOS ArkTS无法访问带特殊字符的对象属性

如一个对象obj具有名为’a-b’的属性字段,是无法以obj.a-b方式访问的。在ts中可以用obj[‘a-b’]这样的方式来访问,但是arkTs禁用了这种访问方式,会报arkts-no-props-by-index错误。另外,类型检查对于这种属性检查也会报错。在类型声明中定义了带引号的属性名,然后在实例定义时定义了该属性的值,arkTs语法检查会报arkts-no-untyped-obj-literals的错误。

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

推荐初始化对象时用Record<string,Object>类型,键值对中的键是要加引号的,可以支持a-b的形式,下面也可以用索引去访问,如:

const obj: Record<string, number> = {
  'a-b': 1,
};

console.log("testtag",obj['a-b']);
分享
微博
QQ
微信
回复
22h前
相关问题
HarmonyOS Web无法访问指定html
275浏览 • 1回复 待解决
HarmonyOS 正则特殊字符转义无法匹配
56浏览 • 1回复 待解决
Nginx无法访问localhost怎么回事?
2630浏览 • 1回复 待解决
HarmonyOS三方适配库文档无法访问
395浏览 • 1回复 待解决
HarmonyOS json解析特殊字符
45浏览 • 1回复 待解决
HarmonyOS URL特殊字符编码
780浏览 • 1回复 待解决
ArkTS层通过接口访问C++层对象
394浏览 • 1回复 待解决
HarmonyOS 属性字符如何设置
25浏览 • 1回复 待解决
sql 怎么对单位字符串排序?
2359浏览 • 1回复 待解决