在正在构建的应用程序中,我们创建了一个名为userrolesenum的枚举,如下所示

public enum UserRoleEnum {
    Aministration = 1,
    Manager = 2,
    Employee = 3
}

当这个信息被发送到数据库时,int被存储。
在显示系统中用户的页面上,组件中返回的typescript是一个int数组(如[1,2,3])。
使用typescript和angular2的组合,以下内容用于显示用户的角色:
<div class="role" *ngFor="let role of userRoles">
    <span>{{role}}</span>
</div>

我想展示的是作为[管理,经理,雇员]的数组。
我试过几种不同的方法,但至今没有一种方法奏效。是否有可以继续使用阵列功能的简单转换?

最佳答案

我认为您需要将该数字作为索引传递到枚举中。
你能试试这个吗?

<span>{{UserRoleEnum[role]}}</span>

您可能还需要在组件代码中添加枚举。
public UserRoleEnum = UserRoleEnum;

或;
UserRoleEnum : typeof UserRoleEnum = UserRoleEnum;

关于arrays - 在TypeScript/Angular2中将Int数组转换为Enum,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45644401/

10-12 07:34