如何使用TypeScript Compiler API提取数组类型?例如,给定以下来源:
let a: string[] = []如何才能从获取string[]类型到只获取string类型
ts-morph让这一切变得简单,但我还没有想出如何用原始的TS编译器API来复制它。
似乎我需要使用checker.getTypeArguments(),但它需要一个我不知道如何创建的ts.TypeReference类型。
发布于 2020-03-11 01:15:42
诸如string[]之类的数组类型将采用以下形式:
Array<string>如果您具有这些类型之一,则只需将其作为ts.TypeReference断言并将其传递给TypeChecker#getTypeArguments即可
const typeArgs = typeChecker.getTypeArguments(arrayType as ts.TypeReference);
const elementType = typeArgs[0];为了检查一个类型是否是数组类型,我通常只检查Array的类型符号名称,以及它是否有一个类型参数。
https://stackoverflow.com/questions/60610543
复制相似问题