Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot import ES modules with "node" command in my Nuxt project

  • My nuxt project uses serverMiddleware defined in nuxt.config.js as serverMiddleware: ['~/api']
  • All the files inside my api directory use import and export statements and work perfectly when I run npm run dev
  • I also have a seeders directory which contains a bunch of database seeder files with each one having import and export statements
  • When I run it from package.json with "seed:dev": "cross-env NODE_ENV=development node ./api/db/seeders",

I get the following error

(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! [email protected] seed:dev: `cross-env NODE_ENV=development node ./api/db/seeders`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] 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

How do I run the database seeders which use import export statements the way nuxt runs my other files?

like image 835
PirateApp Avatar asked Dec 20 '25 09:12

PirateApp


1 Answers

What is your Node.js version ?

Depending of it, you have several options as detailed here: https://stackoverflow.com/a/45854500/8816585

The most simple is still to have a "type": "module" in your package.json as the error tells you !

The latest LTS is: 14.16.0 and it may not be supported by all the platforms, so beware.

PS: it's a bit more simple in v15 if I'm not mistaken but this version is still experimental.

TLDR: nothing related to Nuxt in any way. ^^

like image 146
kissu Avatar answered Dec 22 '25 00:12

kissu



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!