为了账号安全,请及时绑定邮箱和手机立即绑定

设置了 --experimental-modules 的“不能在模块外使用 import 语句”

设置了 --experimental-modules 的“不能在模块外使用 import 语句”

慕斯王 2022-06-05 17:04:40
我正在尝试在我的 Webpack 配置文件中使用 ES 导入,但我没有让 Node 接受它们。webpack.config.js:import webpack from 'webpack';export default {  mode: 'development'};在 package.json 中:{  "scripts": {    "start": "node --experimental-modules node_modules/webpack-dev-server/bin/webpack-dev-server.js"  }}但是,当我尝试使用 运行它时npm start,出现以下错误:C:\redacted\webpack.config.js:1import webpack from 'webpack';^^^^^^SyntaxError: Cannot use import statement outside a module    at wrapSafe (internal/modules/cjs/loader.js:1072:16)    at Module._compile (internal/modules/cjs/loader.js:1122:27)    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)    at Module.load (internal/modules/cjs/loader.js:1002:32)    at Function.Module._load (internal/modules/cjs/loader.js:901:14)    at Module.require (internal/modules/cjs/loader.js:1044:19)    at require (internal/modules/cjs/helpers.js:77:18)    at WEBPACK_OPTIONS (C:\redacted\node_modules\webpack-cli\bin\utils\convert-argv.js:114:13)    at requireConfig (C:\redacted\node_modules\webpack-cli\bin\utils\convert-argv.js:116:6)    at C:\redacted\node_modules\webpack-cli\bin\utils\convert-argv.js:123:17我究竟做错了什么?我怎样才能让它尊重 --experimental-modules 标志并允许该import声明?
查看完整描述

1 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

根据NodeJS 文档,Node 将文件视为 ES 模块

  • .mjs以扩展名结尾的文件

  • .js以最近的父n 文件包含值为 的package.jso顶级字段时结尾的文件。typemodule


查看完整回答
反对 回复 2022-06-05
  • 1 回答
  • 0 关注
  • 230 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号