2016-04-29 56 views
1

我想創建一個將枚舉作爲成員的元組。是否可以添加一個枚舉到一個元組?

enum Category { 
    Medieval, 
    Fantasy, 
    SciFi, 
    Pirates 
} 

let games: [string, string, boolean, enum] = [ 
    { name: 'Star Wars: Imperial Assault', company: 'Fantasy Flight', available: true, category: Category.SciFi }, 
    { name: 'Game of Thrones: Second Edition', company: 'Fantasy Flight', available: false, category: Category.Fantasy }, 
    { name: 'Merchans and Marauders', company: 'Z-Man Gaming', available: true, category: Category.Pirates }, 
    { name: 'Eclipse', company: 'lautapelit', available: false, category: Category.SciFi } 
] 

VisualStudio中的枚舉返回一個錯誤valuein元組

類型預期

TypeScript playground link

+0

建議立即進行刪除不是'Category'而不是'enum'? –

+0

這會返回'Type [x:number] undefined,name:string;公司:字符串;可用:布爾型; category:Category; ..'我添加了一個打字遊樂場鏈接來查看結果。 –

回答

1

試試這個

enum Category { 
    Medieval, 
    Fantasy, 
    SciFi, 
    Pirates 
} 

function getAllGames() { 

    let games: {name:string, company:string, available:boolean, category:Category}[] = [ 
     { name: 'Star Wars: Imperial Assault', company: 'Fantasy Flight', available: true, category: Category.SciFi }, 
     { name: 'Game of Thrones: Second Edition', company: 'Fantasy Flight', available: false, category: Category.Fantasy }, 
     { name: 'Merchans and Marauders', company: 'Z-Man Gaming', available: true, category: Category.Pirates }, 
     { name: 'Eclipse', company: 'lautapelit', available: false, category: Category.SciFi } 
    ] 

    // de functie GetAllGames returned de let array 'games' zodat deze array ergens anders gebruikt kan worden. 
    return games; 
} 
+0

因此,您創建了一個對象,它是讓出遊戲的類型註釋。所有的對象都應該遵循這些價值觀。很酷,我創建了一個界面Igames,插入了元素和值,然後將該界面作爲讓遊戲的註釋。 –

相關問題