如何在 AST 中获取 typeof 变量?
How to get typeof variable in AST?
如何获取AST中变量的typeof
是什么?
const code = `const foo = () => {
const baz = this;
}`;
我想找到类型为 globalThis
的变量。 (例如 baz
是 typeof globalThis
)
知道怎么做吗?
转换代码:
module.exports = (fileInfo, api, options) => {
const j = api.jscodeshift;
const root = j(fileInfo.source);
root.find(j.Identifier)
.forEach(x => {
if (x.value.name === 'baz') {
console.log({ x });
// type: typeof globalThis??
}
});
return root.toSource();
}
首先,您正在查看错误的 AST 查看器。
对于 TS,您可以使用 TS AST viewer
或者,你可以直接使用 TS 编译器 API,你可以找到 here
如何获取AST中变量的typeof
是什么?
const code = `const foo = () => {
const baz = this;
}`;
我想找到类型为 globalThis
的变量。 (例如 baz
是 typeof globalThis
)
知道怎么做吗?
转换代码:
module.exports = (fileInfo, api, options) => {
const j = api.jscodeshift;
const root = j(fileInfo.source);
root.find(j.Identifier)
.forEach(x => {
if (x.value.name === 'baz') {
console.log({ x });
// type: typeof globalThis??
}
});
return root.toSource();
}
首先,您正在查看错误的 AST 查看器。
对于 TS,您可以使用 TS AST viewer 或者,你可以直接使用 TS 编译器 API,你可以找到 here