2017-05-03 11 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.4

このため議論は、この問題に始まっ:Index signature parameter type should allow for enums

+0

OK、THX、私は2.4に私のバージョンを更新しようとします – Jackson

関連する問題