当我运行“Ionic start project name”时,我总是得到这个错误消息:
错误消息
Running command - failed![ERROR] An error occurred while running npm install (exit code 1):
module.js:471
throw err;
^
Error: Cannot find module '../lib/utils/unsupported.js'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at /usr/local/lib/node_modules/npm/bin/npm-cli.js:19:21
at Object.<anonymous> (/usr/local/lib/node_modules/npm/bin/npm-cli.js:79:3)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
这可能发生在npm/lib文件夹由于某种原因被清空时(也可能发生在上次使用时由于权限问题)。
重新安装节点可以解决这个问题(正如这里的其他答案所述),但我建议使用一个叫做nvm(节点版本管理器)的很棒的工具,它能够管理多个版本的node和npm -这在开发机器上非常有用,因为有多个项目需要不同版本的node。
当你安装nvm时,这个消息就会消失,你就可以使用最新版本的node和npm了。
为了查看nvm中当前安装的节点版本列表,只需运行:
nvm list
要安装和使用新的节点版本,请运行:
nvm install <node_version>
例如安装节点10的最新版本。x,运行:
nvm install 10
为了切换到当前安装的版本,运行:
nvm use <node_version>
为了切换到系统的原始节点版本,只需运行:
nvm use system
希望这能有所帮助。
好运!
如果你正在使用“n”库@ https://github.com/tj/n。执行以下步骤
echo $NODE_PATH
如果节点路径为空,则
sudo n latest - sudo is optional depending on your system
使用n切换Node.js版本后,npm可能无法正常工作。
curl -0 -L https://npmjs.com/install.sh | sudo sh
echo NODE_PATH
您现在应该看到您的节点路径。否则,它可能是别的东西
这是一个关于从你的计算机操作系统中移除节点的有用视频和博客文章。这是一种不同的删除方法,基于您最初安装节点的方式(brew vs.从https://nodejs.org/en/下载的二进制文件)
if you installed node with Homebrew then brew uninstall node will work. Verify that with running a node -v command in your terminal.
Otherwise and if you have installed the binary file from nodeJS's websitethen you have to run this command in your terminal: sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}. Again, verify that with running a node -v command.
In both cases, successful removal of node should result in bash not recognizing what node is if it is completely removed