将数组转换为typescript选项



我想知道是否可以使用字符串/整数数组作为typescript接口的选项。例如:

const numbers = [50,100,200,300,400,500];
interface INumbers {
numbersType:numbers --> (should be 50 | 100 | 200 | 300 | 400 | 500)
}

请让我知道这是否可能,以及如何做到这一点!

谢谢!

您可以这样尝试。

type numbers = [50,100,200,300,400,500];
interface INumbers {
numbersType:numbers;
}
const numbers = [50,100,200,300,400,500] as const;
interface INumbers {
numbersType: (typeof numbers)[number]
}
const passes: INumbers = {
numbersType: 50 // WORKS
};
const fails: INumbers = {
numbersType: 51 // FAILS
};

最新更新