gpt4 book ai didi

javascript - 将字符串文字解析为枚举数组

转载 作者:行者123 更新时间:2023-11-30 09:23:48 24 4
gpt4 key购买 nike

我在 API 响应中收到以下内容:

{ "roles": [ "ADMIN", "USER" ] }

其中响应​​将始终包含一组 Angular 色(USERPRESENTERORGANIZERADMIN ).

我想将它转换成有效的 TypeScript 数组 (Role[]),其中类型 Role 定义如下:

export type Role = 'USER' | 'PRESENTER' | 'ORGANIZER' | 'ADMIN'

有什么想法吗?

最佳答案

您的 Angular 色 类型不是 枚举。它只是一种限制为某些值的字符串类型。

您可以将结果转换为 Role[],TypeScript 会很高兴。这假设传入的数据永远不会有错误的值(value)!

const data: {roles: Role[]} = JSON.parse('{"roles": ["ADMIN", "USER"]}');
data.roles // TypeScript knows it is a Role[]

关于javascript - 将字符串文字解析为枚举数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50026880/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com