HarmonyOS 将枚举转成对象,使用keyof会报错,怎么修改?
怎么修复不会报错,代码如下:
enum Color {
Red = 1,
Green = 2,
Blue = 3,
}
function enumToObject<T extends Record<string, string | number>>(e: T): Record<keyof T, T[keyof T]> {
const obj = {} as Record<keyof T, T[keyof T]>;
for (const key in e) {
if (typeof e[key] === "number") {
obj[key] = e[key];
}
}
return obj;
}
const colorObj = enumToObject(Color);
console.log(colorObj);
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS HasMap 如何转成对象
104浏览 • 1回复 待解决
如何将Resource资源对象转成string类型
2945浏览 • 1回复 待解决
HarmonyOS 使用 zlib.decompressFile 会报错 17700101
317浏览 • 0回复 待解决
Color.Black如何转成对应的颜色编码
1928浏览 • 1回复 待解决
HarmonyOS 如何把对象转成HasMap
465浏览 • 2回复 待解决
如何将js传的map转成c++的对象
598浏览 • 1回复 待解决
Checkstyle插件使用中为什么会报错?
8243浏览 • 1回复 已解决
#鸿蒙学习大百科#如何将资源对象转成string类型?
98浏览 • 1回复 待解决
ArkTS中,HashMap对象怎么转成 json字符串?
109浏览 • 1回复 待解决
如何将ArrayBuffer转成string?
460浏览 • 1回复 待解决
每次导入鸿蒙示例工程都会报错怎么回事?
3018浏览 • 1回复 待解决
HarmonyOS Native调用TS侧方法,会报错,TS侧方法也不能获取到对象的变量
240浏览 • 1回复 待解决
修改ForEach使用的数据对象,UI不刷新
1355浏览 • 1回复 待解决
HarmonyOS Tabs BarMode枚举问题
175浏览 • 1回复 待解决
如何将ArrayBuffer转成string
2325浏览 • 1回复 待解决
HarmonyOS json处理,对象转成字符串时,想删除对象中的某些字段,可以怎么实现
293浏览 • 1回复 待解决
HarmonyOS如何使用TextInput将输入的小写字字母强制转成大写显示
422浏览 • 1回复 待解决
mysqldump导出oceanbase的表会报错
4512浏览 • 1回复 待解决
HarmonyOS关于代码中自动将string转成number的问题
560浏览 • 1回复 待解决
HarmonyOS 将json对象按照 ASCII 排序
356浏览 • 1回复 待解决
在 string 转成ArrayBuffer报错
872浏览 • 1回复 待解决
HarmonyOS 修改工程启动入口报错
170浏览 • 1回复 待解决
将rawfile中json格式的字符串转换成对应的object对象后,调用实例方法后程序崩溃
2086浏览 • 1回复 待解决
为何执行terminateAbility后拉起Ability会报错
1891浏览 • 1回复 待解决
自定义弹窗传参使用报错未定义,不进行封装,则不会报错
1620浏览 • 1回复 待解决
根据您的代码,我们推测您希望达成的效果是将enum类型转换成一个object,并且object本身拥有enum对应key和value。
由于ArkUI中并不支持 for...in... ,我们需要将key从入参 e 中提取出来,然后检验是否为正确枚举key:
此方法只对枚举值为number的枚举类型有效。