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

当前回答

这是一个关于从你的计算机操作系统中移除节点的有用视频和博客文章。这是一种不同的删除方法,基于您最初安装节点的方式(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

其他回答

我收到了类似的错误,现在有它的工作。

首先确保你有最新的版本

brew update

删除之前的node实例:

brew uninstall node

然后重新安装最新版本:

brew install node

然后确保它被符号链接到/usr/local(如果还没有)。您将得到一个错误,让您知道要完成这一步。

brew link --overwrite node 

关于如何安装/升级节点的更多详细信息也可用。

我按照前面的答案重新安装了节点。但是我得到了这个错误。

警告:安装后步骤未成功完成 重试使用brew postinstall节点

所以我执行了这个命令

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

然后跑了

brew postinstall node

你可以运行这个命令,它会自动删除以前的npm版本,并安装新版本,详情https://github.com/npm/cli

curl -qL https://www.npmjs.com/install.sh | sh

https://nodejs.org/en/

只需从官网下载节点,这对我有用!:)

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

希望这能有所帮助。

好运!