当前位置: 首页 > 知识库问答 >
问题:

将枚举号转换为字符串[重复]

葛修筠
2023-03-14

我有一个枚举文件,在其中我为PaymentTypes定义了一个对象:

export enum PaymentTypes {
   Invoice = 1,
   CreditCard = 2,
   PrePayment = 3,
}
 order:
    [
        { "id": 0, "name": "Available", "PaymentType": 1 },
        { "id": 1, "name": "Ready", "PaymentType": 3 },
        { "id": 2, "name": "Started", "PaymentType": 2 }
    ];

这样我就有了可以使用的东西:

orderFiltered:
        [
            { "id": 0, "name": "Available", "PaymentType": "Invoice" },
            { "id": 1, "name": "Ready", "PaymentType": "PrePayment" },
            { "id": 2, "name": "Started", "PaymentType": "CreditCard" }
        ];

共有1个答案

慕宏儒
2023-03-14

您可以使用map创建一个新的对象数组,其中包含原始数据和枚举成员的名称,您可以使用PaymentTypes[PaymentType]获取枚举成员的名称

let order = [
    { "id": 0, "name": "Available", "PaymentType": 1 },
    { "id": 1, "name": "Ready", "PaymentType": 3 },
    { "id": 2, "name": "Started", "PaymentType": 2 }
];

enum PaymentTypes {
   Invoice = 1,
   CreditCard = 2,
   PrePayment = 3,
}
let orderFiltered = order.map(o => Object.assign({}, o, { PaymentTypeDisplayName: PaymentTypes[o.PaymentType] }));
console.log(orderFiltered);

不过,需要注意的一点是,使用枚举成员名作为显示可能不是最友好的使用体验。

 类似资料:
  • 本文向大家介绍Java将枚举转换为字符串,包括了Java将枚举转换为字符串的使用技巧和注意事项,需要的朋友参考一下 示例 有时您想将枚举转换为String,有两种方法可以实现。 假设我们有: 那么,我们如何将类似的东西转换Fruit.APPLE为"APPLE"? 使用转换 name() name()是一个内部方法,enum该方法返回String枚举的表示形式,返回值精确String表示枚举值的定义

  • 我在TypeScript中定义了以下枚举: 现在在我的函数中,我接收颜色作为字符串。我已经尝试了以下代码: 如何将该值转换为枚举?

  • 我想用Typescript写这样的东西: 并按如下方式使用: 它会返回的地方 上面的函数按预期工作…但是输入抛出错误。对于

  • 我正在尝试将Typecript枚举值转换为数字,以便在我的下拉列表中显示枚举字符串值,但在提交按钮上,传递的是该值而不是字符串。枚举设置如下。 到目前为止,我已经能够控制台.log对象的键(字符串)(例如 Value),但我想做的是在发出对象后传递 0(数字)值。 我该怎么做?

  • 问题内容: 我定义了以下枚举 现在的印刷价值是 相反,我想打印枚举的值 要实现此功能可以做些什么? 问题答案: 您正在打印枚举 对象 。如果只想打印该属性,请使用该属性: 请参阅 对枚举成员及其属性 的 编程访问权限 部分 : 如果您有枚举成员并需要其名称或值: 如果只需要提供自定义字符串表示形式,则可以向枚举添加方法: 演示:

  • 我找到了这个关于如何将字符串转换为打字稿枚举的好答案。在此基础上,我编写了这个函数 但是现在当我尝试使它通用时, 我在return语句中得到错误:< code >“T”只引用一个类型,但在这里被用作值。 我想使这个泛型,因为我有许多枚举需要根据它们的字符串值生成,并且我不想为每个枚举使用单独的方法。