枚举类型的对象键-不能分配给'string |编号|符号'

时间:2020-10-20 11:43:18

标签: typescript typescript-typings typescript-generics

看来我的类型工作正常。然后可以请人帮我解释一下定义错误,以及如何解决?我找不到解决方法。

export enum Languages {
  Cs = 'cs',
  Sk = 'sk',
  En = 'en'
}

export type RouteDefinitionItem<T> = {
  name: string;
  pathname: { [index in T]: string };
  page: string;
};

const routes: RouteDefinitionItem<Languages>[] = [
  {
    name: 'home',
    pathname: {
      cs: '/',
      en: '/en',
      sk: '/sk'
    },
    page: '/home'
  }
];

错误:

Type 'T' is not assignable to type 'string | number | symbol'.
  Type 'T' is not assignable to type 'symbol'.

Link to TypeScript playground.

谢谢。

1 个答案:

答案 0 :(得分:1)

  result.forEach(element => {
  array=array.push(element)
});

已更新。