【发布时间】:2020-08-21 14:49:09
【问题描述】:
我想使用一个构造数组作为参数的函数,其中每个元素可能是不同的类型。类型的顺序是相关的,我需要将它们的顺序保留为元组。这是一种方法:
const create = <T>(spec: (...args: any[]) => T) => spec;
const result = create(() => ['a', 2, 'a'] as const);
type t = ReturnType<typeof result>; // t is ['a', 2, 'a']
但是,这意味着开发人员必须记住在每次使用 create 时添加 as const。
在我的用例中,类型的顺序是总是相关的,函数应该总是接收一个元组。
有什么方法可以强制 Typescript 始终从返回类型推断元组而不需要 as const?
【问题讨论】:
标签: typescript