首页 > 解决方案 > 无法在我的 Nuxt 项目中使用“node”命令导入 ES 模块

问题描述

我收到以下错误

(node:12212) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
/Users/zup/Desktop/code/ACTIVE/ch_v3_final/api/db/seeders/index.js:1
import feeds from './feeds-data'
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at wrapSafe (internal/modules/cjs/loader.js:915:16)
    at Module._compile (internal/modules/cjs/loader.js:963:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
    at internal/main/run_main_module.js:17:47
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ch@1.0.0 seed:dev: `cross-env NODE_ENV=development node ./api/db/seeders`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the ch@1.0.0 seed:dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/zup/.npm/_logs/2021-03-21T16_38_58_766Z-debug.log

如何像 nuxt 运行我的其他文件一样运行使用导入导出语句的数据库播种机?

标签: node.jsecmascript-6babeljsnuxt.js

解决方案


你的 Node.js 版本是什么?

取决于它,您有几个选项,如下所述:https ://stackoverflow.com/a/45854500/8816585

最简单的仍然是"type": "module"在你package.json的错误中告诉你一个!

最新的 LTS 是:14.16.0并且可能并非所有平台都支持,所以要小心。

PS:如果我没记错的话,它在 v15 中会更简单一些,但这个版本仍然是实验性的。

TLDR:与 Nuxt 没有任何关系。^^


推荐阅读