Typescript-比较从服务器提交的序列化枚举
我有以下枚举:Typescript-比较从服务器提交的序列化枚举,typescript,enums,Typescript,Enums,我有以下枚举: export enum ClearingStatus { APPROVED, PENDING } 在此界面中: export interface PurchaseResponse { email?: string; clearingStatus?: ClearingStatus; } PurchaseResponse从服务器提交为:{“电子邮件”:test@t,“clearingStatus”:“已批准”} 我想将它与clent中的枚举进行比较
export enum ClearingStatus
{
APPROVED,
PENDING
}
在此界面中:
export interface PurchaseResponse
{
email?: string;
clearingStatus?: ClearingStatus;
}
PurchaseResponse
从服务器提交为:{“电子邮件”:test@t,“clearingStatus”:“已批准”}
我想将它与clent中的枚举进行比较
这些措施不起作用:
x.clearingStatus===clearingStatus.APPROVED
x.clearingStatus===clearingStatus.APPROVED
(编译错误)
这是有效的
x.data.clearingStatus as unknown===clearingStatus[clearingStatus.APPROVED]
这是代码气味
你能推荐一种更好更安全的方法吗?谢谢在您的代码中,
ClearingStatus.APPROVED
为0,而ClearingStatus.PENDING
为1-这些不会与序列化字符串进行比较
但您可以使用字符串枚举:
export enum ClearingStatus
{
APPROVED = "APPROVED",
PENDING = "PENDING"
}
在您的代码中,
ClearingStatus.APPROVED
为0,而ClearingStatus.PENDING
为1-这些不会与序列化字符串进行比较
但您可以使用字符串枚举:
export enum ClearingStatus
{
APPROVED = "APPROVED",
PENDING = "PENDING"
}