esprima 转化 ast 报错

发布于 2022-09-12 23:09:08 字数 1346 浏览 22 评论 0

如下代码,用 esprima 来转化代码为ast语法树。竟然报错了,为什么?在官网上转义代码并没有报错。需要怎么解决?https://esprima.org/demo/pars...

var esprima = require('esprima');
var program = `const routers = [];
export default routers;`;

console.log(esprima.parse(program));
/Users/mycode/node_modules/esprima/dist/esprima.js:5008
                throw error;
                ^
Error: Line 2: Unexpected token
    at ErrorHandler.constructError (/Users/mycode/node_modules/esprima/dist/esprima.js:5012:22)
    at ErrorHandler.createError (/Users/mycode/node_modules/esprima/dist/esprima.js:5028:27)
    at Parser.unexpectedTokenError (/Users/mycode/node_modules/esprima/dist/esprima.js:1985:39)
    at Parser.tolerateUnexpectedToken (/Users/mycode/node_modules/esprima/dist/esprima.js:1998:42)
    at Parser.parseStatementListItem (/Users/mycode/node_modules/esprima/dist/esprima.js:3371:31)
    at Parser.parseScript (/Users/mycode/node_modules/esprima/dist/esprima.js:4723:29)
    at Object.parse (/Users/mycode/node_modules/esprima/dist/esprima.js:122:61)
    at Object.<anonymous> (/Users/mycode/main.js:5:21)
    at Module._compile (internal/modules/cjs/loader.js:688:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

救星 2022-09-19 23:09:08

看了下文档,用 esprima.parseModule 就可以。
https://esprima.readthedocs.i...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文