如何在打字稿中使用C#枚举列表

时间:2019-01-02 10:57:33

标签: c# typescript enums

这是我在C#中的枚举列表类

   namespace MyProject.MyName
    {
   public enum MyNameList
     {
    [Description("NameOne")]
    NameOne,

    [Description("NameTwo")]
    NameTwo,

    [Description("NameThree")]
    NameThree
        }
      } 

这就是我在C#.cshtml剃刀和javascript中使用此枚举列表的方式

    @using MyProject.MyName
     ....
     ....
     <script>
          ..
          ..
      if (result.data == @((int)MyNameList.NameOne))
          ..
          ..
     </script>  

现在我必须在Typescript中编写此(javascript)代码,以及如何在Typescript中使用我的枚举列表MyNameList

2 个答案:

答案 0 :(得分:2)

您需要创建一个新的打字稿定义文件,例如, nameList.d.ts

export enum MyNameList
{
    NameOne,
    NameTwo,
    NameThree
}

在Typescript文件中,这样导入

import { MyNameList } from "./nameList";

现在您可以在

之类的打字稿中使用这些枚举列表
MyNameList.NameOne

答案 1 :(得分:1)

JavaScript在本地浏览器上执行。您将无法直接在其中使用Enum。

您可以将Enum值作为响应的一部分返回,然后在JS中比较枚举值。

您可以在打字稿中添加枚举,然后将其与响应字段进行比较。

enum Direction {
    Up = "UP",
    Down = "DOWN",
    Left = "LEFT",
    Right = "RIGHT",
}