Leo*_*ssi 0 javascript enums interface typescript typescript-typings
这是枚举:
enum PossibleValues {
A = 'A',
B = 'B',
C = 'C'
}
Run Code Online (Sandbox Code Playgroud)
这是使用枚举作为字段之一的类型:
export interface MyInterface {
name: string;
age: number;
value: PossibleValues;
}
Run Code Online (Sandbox Code Playgroud)
我假设在这种情况下,因为value它应该只接受来自枚举(A、B 或 C)的值,但我可以放在那里其他值并且它工作正常。
有没有办法将可能的值限制为枚举中的值?
小智 5
您可以通过提取 MaybeValues 的类型,然后获取该类型的所有键来完成此操作,如下所示:
export interface MyInterface {
name: string;
age: number;
value: keyof typeof PossibleValues;
}
Run Code Online (Sandbox Code Playgroud)
现在 value 将只有 3 个可能的值A,B&C
| 归档时间: |
|
| 查看次数: |
466 次 |
| 最近记录: |