首页 > 解决方案 > 如何在打字稿中检查泛型类型的实时类型?

问题描述

我有这个代码:

(<T extends number | string>({value}: Props<T>) => {

}

T是泛型类型,可以是numberstring。有没有办法T实时检查 's 的类型?像typeof T === 'number'什么?我知道我可以检查值类型,但我正在寻找泛型类型解决方案。

标签: typescript

解决方案


Typescript 设计目标将以下内容列为非目标之一

在程序中添加或依赖运行时类型信息,或根据类型系统的结果发出不同的代码。相反,鼓励不需要运行时元数据的编程模式。

我没有亲自使用过它,但听说过io-ts库,它可能值得一试,以了解您正在尝试做的更大的事情。


推荐阅读