字符串我现在有这样的数组:打字稿:获取我的代码库从类型脱节
type Filter = "all"| "active"| "broken"| "disabled";
const filters: Filter[] = ["all", "active", "broken", "disabled"];
我可以自动生成一个从水能捞到?
字符串我现在有这样的数组:打字稿:获取我的代码库从类型脱节
type Filter = "all"| "active"| "broken"| "disabled";
const filters: Filter[] = ["all", "active", "broken", "disabled"];
我可以自动生成一个从水能捞到?
总之:没有。至少不是在运行时。而不是作为TypeScript语言的一部分。
TypeScript type
仅用于编译/输入目的。它实际上并没有编译成任何东西。
您可以使用enum
自动执行某些操作,因为枚举实际上编译为一个JavaScript对象,您可以选择其中的属性。它不会基于像你的类型的字符串......不知道这是否超级重要。
function setupEnum(enumType: any): any[] {
let result = [];
for (let i in enumType)
if (isNaN(+i))
result.push(enumType[i]);
return result;
}
enum Filter {
all, active, broken, disabled
}
var filters: Filter[] = setupEnum(Filter);
@Mitch是正确的,这是不可能的。
我目前在TS中的挑战列表(link - >UnionToArray
)中有这个。我认为实施各种各样的种类(那里有#5453)可能有办法解决这个问题。