2016-03-22 7 views
0

Ich möchte eine Zeichenfolge-basierte Enum erstellen, um Währungen in meinem System (USD, GBP, EUR, etc - solche Zeichenfolgen als die einzigen zulässigen Werte) darzustellen.TypeScript String-basierte enum Compiler-Fehler

Ich fand genau, was ich in Basarat's TypeScript book brauche. Die Sache ist, wenn ich versuche, es zu benutzen, wie sie ist:

type CardinalDirection = 
    "North" 
    | "East" 
    | "South" 
    | "West"; 

ich einen Compiler-Fehler:

myfile.ts(4,5): error TS1110: Type expected. 

ich tsc bin mit Version 1.5.0-beta. Die Frage ist: Welche Versionen unterstützen dieses Feature und/oder wie kann ich es funktionieren lassen?


edit: nach der Aktualisierung von TSC auf 1.8.9 bekomme ich den gleichen Fehler.

+0

Das folgende TypeScript Beispiel funktioniert gut: https://jsfiddle.net/y8yz1hcm/ –

Antwort

2

String-Literaltypen wurden in TypeScript 1.8 hinzugefügt.

Ihr Code funktioniert gut im TypeScript playground, so dass die Syntax gut aussieht.

+1

vergessen, dass mein 'grunt-typescript' Plugin für Grunt viel ältere Version von' typescript' verwendet :( – ducin

Verwandte Themen