我想将此变量转换为枚举:
colors: Array<object> = [
{ name:"bob1", engValue: 'RED' },
{ name:"bob2", engValue: 'GREEN' },
{ name:"bob3", engValue: 'YELLOW' }
];
我想创建一个模型并将其注入我的组件..我能做到的最好的方法是什么?
你有望出口和进口吗?如果是,例如你想将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
的任何地方使用它
对不起,如果这不是你想要的
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);