当我运行“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)

当前回答

尝试删除/usr/local/lib/node_modules/npm并重新安装node。这应该有用。

在MacOS上使用Homebrew:

sudo rm -rf /usr/local/lib/node_modules/npm
brew reinstall node

其他回答

这可能发生在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 postinstall节点

所以我执行了这个命令

sudo chown -R $(whoami):admin /usr/local/lib/node_modules/

然后跑了

brew postinstall node

在Windows上:

移除~/AppData/Roaming目录下的npm文件夹

我通过混合安装/更新方法得到了这个错误:通过从网站下载包安装节点,后来我使用brew更新。

我通过卸载brew版本来修复:

酿造卸载——忽略依赖项节点

然后我回到节点网站,通过包管理器下载并安装:https://nodejs.org/en/download/ 出于某种原因,再多的尝试通过brew重新安装都不起作用。