我想将此变量转换为枚举:
colors: Array<object> = [
{ name:"bob1", engValue: 'RED' },
{ name:"bob2", engValue: 'GREEN' },
{ name:"bob3", engValue: 'YELLOW' }
];
我想创建一个模型并将其注入到我的组件中。 我能做到的最好方法是什么?
答案 0 :(得分:0)
您是否希望导出和导入它?例如,如果是,则要将colors
放在文件a.ts
中,并将其放入b.ts
然后您可以在a.ts中写
export const color = [
{ name:"bob1", engValue: 'RED' },
{ name:"bob2", engValue: 'GREEN' },
{ name:"bob3", engValue: 'YELLOW' }
];
和b.ts
import { colors } from 'a'
然后您可以在b.ts
对不起,如果那不是您想要的
答案 1 :(得分:0)
枚举在JS中不存在。
在TS中,它们被转换为对象。
使用reduce
:
const colorsArray = [
{ name:"bob1", engValue: 'RED' },
{ name:"bob2", engValue: 'GREEN' },
{ name:"bob3", engValue: 'YELLOW' }
];
const colorsObject = colorsArray.reduce((p, n) => ({ ...p, [n.name]: n.engValue }), {});
console.log(colorsObject);