angular - 带有值和显示名称的 typescript 枚举

标签 angular typescript enums

我一直在研究 typescript ,我想显示枚举字符串以外的值,但该值必须是数字。

export enum yearofstudy {
     FirstYear,
     secondYear,
     ThirdYear
}

在上面的代码中,我需要值为 0,1,2,但显示为第一年,第二年,第三年。我怎样才能做到这一点?

最佳答案

这几乎就是 Angular 中管道的用途。它们允许您以可重用和可缓存的方式定义它。创建一个类似的管道

@Pipe({name: "yearOfStudy"})
export class YearOfStudyPipe implements PipeTransform {
  public transform(value: YearOfStudy): string {
    switch (value) {
      case FirstYear: return "1st Year";
      //... 
    }
  }
}

然后就可以使用

{{ yourValue | yearOfStudy }} 

关于angular - 带有值和显示名称的 typescript 枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53424824/

相关文章:

javascript - 在 Ionic 3、Firebase 和 Angular 中迭代项目列表并将其显示在页面上时出现错误

angular - 如何有条件地引导 Angular 应用程序?

javascript - 如何在 Angular 6 中加载自定义字体?

Java如何访问内部枚举类

c# - 更改 MongoDB 文档中存储为字符串的枚举值

javascript - 如何在 Angular 中使用通过状态传递的数据

angular - Angular 2 中的延迟加载

Angular ng-select如何使用模板表达式设置选定值

javascript - typescript - 从当前日期计算月份和年份

java - 为什么 "customised Enum constructor"返回所有其他 Enum 类型的信息?