我正在尝试使用axios如下:
import axios from 'axios';
axios.post("http://localhost:3000/test", {"prop1": "value"}, {headers: {'X-Custom-Header': 'foobar'}})
然后编译器抱怨:
/home/developer/Desktop/reason/interoperate/src/Ax.js:1
(function (exports, require, module, __filename, __dirname) { import axios from 'axios';
^^^^^
SyntaxError: Unexpected identifier
at new Script (vm.js:74:7)
at createScript (vm.js:246:10)
at Object.runInThisContext (vm.js:298:10)
at Module._compile (internal/modules/cjs/loader.js:670:28)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
at Module.load (internal/modules/cjs/loader.js:612:32)
at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
at Function.Module._load (internal/modules/cjs/loader.js:543:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
at startup (internal/bootstrap/node.js:238:19)
developer@monad:~/Desktop/reason/interoperate/src$node Ax.js
/home/developer/Desktop/reason/interoperate/src/Ax.js:1
(function (exports, require, module, __filename, __dirname) { import axios from 'axios';
我导入了错误的路径吗?
解决方法:
Node.js尚未完全支持ES模块,这意味着您无法使用import关键字.您现在可以使用像Babel和Webpack这样的源代码转换器,但这需要构建步骤.
编辑:公平地说,Node.js 10.4.0有一个experimental support for ES modules,它位于一个标志后面:–experimental-modules.这还需要为您的JS文件使用.mjs文件扩展名.
该功能目前标记为稳定性:1 – 实验 – 不建议在生产环境中使用该功能.
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!