Pana / nrm

NPM registry manager, fast switch between different registries: npm, cnpm, nj, taobao
MIT License
2.77k stars 242 forks source link

throw new ERR_REQUIRE_ESM(filename, parentPath, packageJsonPath); #156

Open maxiaoqu opened 1 year ago

maxiaoqu commented 1 year ago

maxiaoqu@maxiaoqudeMacBook-Pro ~ % nrm ls
internal/modules/cjs/loader.js:1131 throw new ERR_REQUIRE_ESM(filename, parentPath, packageJsonPath); ^

Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /Users/maxiaoqu/.nvm/versions/node/v14.21.3/lib/node_modules/nrm/node_modules/open/index.js require() of ES modules is not supported. require() of /Users/maxiaoqu/.nvm/versions/node/v14.21.3/lib/node_modules/nrm/node_modules/open/index.js from /Users/maxiaoqu/.nvm/versions/node/v14.21.3/lib/node_modules/nrm/cli.js is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules. Instead rename index.js to end in .cjs, change the requiring code to use import(), or remove "type": "module" from /Users/maxiaoqu/.nvm/versions/node/v14.21.3/lib/node_modules/nrm/node_modules/open/package.json.

maxiaoqu commented 1 year ago

use node version is 14.21.3

panjinghui commented 1 year ago

I have the same problem as you. Do you have a solution?

maxiaoqu commented 1 year ago

@panjinghui can use nrm-sunny1011111,you can run bash as "npm i nrm-sunny1011111 -g"!

solfKwolf commented 1 year ago

use this command:

use this command: npm install -g nrm open@8.4.2 --save
maxiaoqu commented 1 year ago

i use myself package with inrm,you can run bash as “npm install invm -g”,details view in: https://github.com/maxiaoqu/nrm

tldzyx commented 1 year ago

use node version is 14.21.3 too, I don't sure which old version support, who meet the same wrong.

xllily commented 1 year ago

use this command:

use this command: npm install -g nrm open@8.4.2 --save

not work for me , but borrow the idea, so i try:

  1. find the nrm global installed dir {{your_global_node_module_path}}/node_modules/nrm/
  2. rm the nrm/node_modules and nrm/package-lock.json (if there is)
  3. edit nrm/package.json, change "open":">=6.0.0" to "open":"8.4.2"
  4. last, npm install(in the current nrm dir)

done, nrm ls success, work for me.

CaptainOfPhB commented 11 months ago

Try npm i -g nrm-ng.

naiemhosen430 commented 7 months ago

in my case, localhost is working fine but now I am deploying it to the Namecheap server there is 14.21.2 and not working. What do you think I should do now?

k-enagy commented 7 months ago

in my case, localhost is working fine but now I am deploying it to the Namecheap server there is 14.21.2 and not working. What do you think I should do now?

same problem here there is no require in my index.js file