2017-05-03 71 views
0

我有一个类型:如何使用其他界面的键创建自定义界面?

enum mycustomlist { 
    football = 0, 
    handball = 1, 
    basketball = 2, 
    chess = 3, 
    swimming = 4 
} 

,我需要一个新的接口,我需要有

optional key (from mycustomlist): boolean 

例如:

{ 
    0: true, 
    1: false, 
    2: true, 
    3: false 
} 

{ 
    2: false 
} 

{ 
    3: true, 
    2: false 
} 

我尝试:

player: { 
    <list>: boolean 
} 

但是我有错误((

我该如何创建?

回答

2

所以基本上这是它如何工作:

enum List { 
    football = 0, 
    handball = 1, 
    basketball = 2, 
    chess = 3, 
    swimming = 4 
} 

type MyType = { 
    [P in List]: boolean 
} 

的问题是,它会导致以下错误:

error TS2322: Type 'List' is not assignable to type 'string'

这是一个悬而未决的问题:Enums can no longer be used for index signature types,应在解决版本2.4Index signature parameter type should allow for enums

+0

OK,THX,我会尝试更新我的版本到2.4:

对此的讨论这个问题开始 – Jackson