javascript - 枚举成员如何在 TypeScript 中使用别名?

标签 javascript typescript enums

我在 TypeScript 中有以下 enum:

enum RoleTypes {
  None,
  Admin,
  SuperAdmin
}

当我运行以下代码时:

var roleName = RoleTypes[RoleTypes.SuperAdmin];

变量 roleName 的值为 SuperAdmin

是否可以将其更改为自定义名称“ super 管理员”,我该怎么做?

最佳答案

您可以为此使用单独的对象或数组(Playground):

enum RoleTypes {
    None,
    Admin,
    SuperAdmin
}

let RoleTypesDisplay: { [index: number]: string } = {};
RoleTypesDisplay[RoleTypes.None] = "None";
RoleTypesDisplay[RoleTypes.Admin] = "Administrator";
RoleTypesDisplay[RoleTypes.SuperAdmin] = "Super Administrator";

var roleName = RoleTypesDisplay[RoleTypes.SuperAdmin];
alert(roleName);

// because RoleTypes is a number based enum that starts with 0 this is equals to 
RoleTypesDisplay = ["None", "Administrator", "Super Administrator"];

var roleName = RoleTypesDisplay[RoleTypes.SuperAdmin];
alert(roleName);

关于javascript - 枚举成员如何在 TypeScript 中使用别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43961641/

相关文章:

javascript - 在catch中的return语句之后仍然执行代码吗?

C++11 元编程 - 在编译期间查找枚举值(值包含间隙)

javascript - Storybook 为一个故事预定义视口(viewport)/参数

wpf - 属性触发器绑定(bind)到标志枚举

用于日志记录的 Java 枚举

javascript - 在 Ipad 中删除对文本框的关注

javascript - HTML 如何删除 FileUpload 字段中的文本?

Javascript - 在递归函数中获取setTimeout的返回值

javascript - 使用 youtube api v3 使用 javascript 从视频中获取标题

reactjs - 无法使用 create-react-app 导入图像