用字符串值创建一个枚举

以下代码可用于enum在TypeScript中创建一个:


enum e {

    hello = 1,

    world = 2

};

可以通过以下方式访问这些值:


e.hello;

e.world;

如何创建enum带有字符串值的?


enum e {

    hello = "hello", // error: cannot convert string to e

    world = "world"  // error 

};


偶然的你
浏览 624回答 3
3回答

森林海

TypeScript 2.4+现在,您可以直接将字符串值分配给枚举成员:enum Season {    Winter = "winter",    Spring = "spring",    Summer = "summer",    Fall = "fall"}有关更多信息,请参见#15486。TypeScript 1.8以上在TypeScript 1.8+中,您可以创建一个字符串文字类型来定义该类型,并为值列表创建一个名称相同的对象。它模仿字符串枚举的预期行为。这是一个例子:type MyStringEnum = "member1" | "member2";const MyStringEnum = {    Member1: "member1" as MyStringEnum,    Member2: "member2" as MyStringEnum};它将像字符串枚举一样工作:// implicit typing examplelet myVariable = MyStringEnum.Member1; // okmyVariable = "member2";                // okmyVariable = "some other value";       // error, desired// explict typing examplelet myExplicitlyTypedVariable: MyStringEnum;myExplicitlyTypedVariable = MyStringEnum.Member1; // okmyExplicitlyTypedVariable = "member2";            // okmyExplicitlyTypedVariable = "some other value";   // error, desired确保键入对象中的所有字符串!如果不这样做,则在上面的第一个示例中,该变量将不会隐式键入为MyStringEnum。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

iOS