我经常使用这样的代码
export type Stuff = 'something' | 'else'
export const AVAILABLE_STUFF: Stuff[] = ['something', 'else']
这样我既可以使用 Stuff
类型,也可以在需要时迭代所有可用的东西。
这行得通,但感觉像是重复了两次信息。而且您必须小心,因为更新 Stuff
或 AVAILABLE_STUFF
也需要更新其对应项。
有没有更好的方法来定义数组的类型,或者甚至使用数组来键入一些数据?
最佳答案
使用 TypeScript v3.4 const assertions :
export const AVAILABLE_STUFF = <const> ['something', 'else'];
export type Stuff = typeof AVAILABLE_STUFF[number];
关于typescript - 是否可以从数组创建 typescript 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55020193/