尝试访问节点 REPL 产生错误:找不到模块'esm'



我使用的是Kubuntu 20.04.1,我刚刚通过nvm安装了当前版本的节点(14.8.0(,现在当我试图通过键入node访问节点REPL时,我收到了以下错误消息:

$ node
internal/modules/cjs/loader.js:1083
throw err;
^
Error: Cannot find module 'esm'
Require stack:
- internal/preload
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1080:15)
at Function.Module._load (internal/modules/cjs/loader.js:923:27)
at Module.require (internal/modules/cjs/loader.js:1140:19)
at Module._preloadModules (internal/modules/cjs/loader.js:1397:12)
at loadPreloadModules (internal/bootstrap/pre_execution.js:446:5)
at prepareMainThreadExecution (internal/bootstrap/pre_execution.js:74:3)
at internal/main/repl.js:19:1 {
code: 'MODULE_NOT_FOUND',
requireStack: [ 'internal/preload' ]
} 

任何关于发生了什么以及如何修复的建议都欢迎

如果其他人面临同样的问题,我会回答我自己的问题:要访问节点REPL,只需全局安装esm包:

npm install -g esm

或者,如果只是需要一个项目的包,可以使用项目文件夹:

npm i esm

有关更多信息,请查看此链接。

最新更新