如何使用TypeScript编译器API提取数组的类型?例如,给出以下来源:
let a: string[] = []
如何将类型从string[]
变为string
?
ts-morph使此操作变得容易,但是我还没有弄清楚如何使用原始TS Compiler API复制它。
似乎我需要使用checker.getTypeArguments()
,但它需要一个ts.TypeReference
类型,但我不知道如何创建。
答案 0 :(得分:2)
诸如über-uns
之类的数组类型将采用以下形式:
Über Uns ?
如果您具有以下类型之一,则只需将其声明为PS C:\Users\Bonnie_Py\Desktop\fullstack js> create-react-app
react-app create-react-app : File C:\Users\Bonnie_Py Dev\AppData\Roaming\npm\create-react-app.ps1
cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at
https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:2
+ create-react-app react-app
+ ~~~~~~~~~~~~~~~~
+ CategoryInfo : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
并将其传递给string[]
:
Array<string>
要检查类型是否为数组类型,我通常只检查ts.TypeReference
的类型符号名称,以及它是否具有单个类型参数。