检查字符串是否包含与打字稿中的类型相同的值

问题描述 投票:-1回答:1

我具有以下优先级类型:

export type Priority = "low" | "medium" | "high"| undefined;

下面是我需要提交的模型,但在此之前,我必须确保优先级的值是其中之一,否则我会提出错误的请求。

export type CreateRecord = { 
 readonly priority?: string;
 readonly Name?: string;
};

请在添加条件时需要我的帮助。

javascript typescript
1个回答
1
投票

我想我会为此使用string enum而不是联合类型:

export enum Priority {
    Low = "low",
    Medium = "medium",
    High = "high"
};

export type CreateRecord = { 
    readonly priority?: Priority;
    readonly Name?: string;
};

用法示例:

const c: CreateRecord = {
    priority: Priority.Low,
    Name: "foo"
};

console.log(c.priority); // "low"

On the playground

© www.soinside.com 2019 - 2024. All rights reserved.