问题描述
使用Node运行JS文件,import库时出现SyntaxError: Unexpected identifier,使用require却可以正常导入。
相关代码
如果用我注释掉的那行rquire进来就没问题,但如果用第一行的import导入,就会出错。
import babelParser from '@babel/parser';
// var babelParser = require('@babel/parser');
const code = 'alert("Hello World")';
const ast = babelParser.parse(code);
console.log(ast);
错误信息:
SyntaxError: Unexpected identifier
at new Script (vm.js:80:7)
at createScript (vm.js:274:10)
at Object.runInThisContext (vm.js:326:10)
at Module._compile (internal/modules/cjs/loader.js:664:28)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:712:10)
at Module.load (internal/modules/cjs/loader.js:600:32)
at tryModuleLoad (internal/modules/cjs/loader.js:539:12)
at Function.Module._load (internal/modules/cjs/loader.js:531:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:754:12)
at startup (internal/bootstrap/node.js:283:19)
nodejs 的模块规范是 commonjs,而不是 es module