我有这样的文字类型:
export const MyType = [
'one',
'two',
'three',
'four'
] as const;
export type MyType = typeof MyType[number];
我有一个函数类型MyType
function myFunc(): MyType {}
说我想限制myFunc()
只有两个选项'one'
和'two'
是MyType
的一部分,无论如何要这样做吗?
e。gfunction myFunc(): 'one' and 'two from MyType {}
这是在1.8版本中作为"字符串文字类型"发布的
Typescript的新特性-字符串文字类型
export const MyType = [
'one',
'two',
'three',
'four'
] as const;
export type MyType = typeof MyType[number];
function myFunc(): "one"|"two"{
return "one"
}
也可以在返回值
中使用数组function myFunc(): typeof MyType[0] | typeof MyType[1]{
return "one"
}