即使在我安装brew node和NVM安装v0.6.19之后,我的节点版本始终是v0.6.1-pre。

我的节点版本是:

node -v
v0.6.1-pre

NVM这样说(在我第一次在一个bash终端中安装一个版本的节点之后):

nvm ls
v0.6.19
current:    v0.6.19

但当我重启bash时,我看到的是:

nvm ls
v0.6.19
current:    v0.6.1-pre
default -> 0.6.19 (-> v0.6.19)

那么,这个幻影节点0.6.1预版本在哪里?我该如何摆脱它?我正在尝试通过NPM安装库,以便我可以在项目中工作。

我尝试在NVM之前使用BREW进行更新,使用BREW更新和BREW安装节点。我已尝试删除/usr/local/include中的“node”目录和/usr/local/lib中的“节点”和“node_modules”。我已尝试卸载npm并按照以下说明重新安装。

所有这些都是因为我试图更新节点的旧版本以安装“zipstream”库。现在我的用户目录中有文件夹,节点版本STILL不是最新的,尽管NVM说它使用的是0.6.19。

理想情况下,我希望卸载nodejs、npm和nvm,然后在我的系统上从头安装整个程序。


当前回答

卸载NodeJS的步骤:

对于带有M1芯片的MacOSMonterey,请按照下面的链接从系统中完全卸载节点。我尝试了多种方法,但这一个终于奏效了。

从Mac M1 Monterey卸载NodeJS和NPM

此外,请在末尾执行以下命令以从bin文件夹中删除与节点相关的目录。

sudo rm -R node-sass
sudo rm -R npm
sudo rm -R npx

要验证节点是否已删除,请执行以下操作:

node --version

它应该说找不到命令。

安装NodeJS的步骤:

使用M1芯片在Mac上启用Rosseta终端。如何启用Rosseta终端

使用nvm(节点版本管理器)在计算机上安装NodeJS。为什么是nvm??因为您可以运行多个版本的NodeJS(您可以使用新的应用程序以及Legacy应用程序)。

如何使用nvm安装多个版本的NodeJS

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

如果不存在,请创建.zshrc文件。

touch ~/.zshrc

使用nvm安装节点。

nvm install node # "node" is an alias for the latest version
nvm install 14.7.0 # or 16.3.0, 12.22.1, etc

要验证可用的NodeJS版本数:

nvm ls

其他回答

在我的情况下,其他答案都不起作用,因为我之前降级到了node8。因此,以下内容对我有效,而不是上述内容:

which node

返回/usr/local/bin/node@8而不是/usr/local/bin/node

所以我执行了这个命令:

brew uninstall node@8

它工作了,然后从官方网站下载了最新的软件包并安装了。之后,我不得不关闭终端,重新开始访问新版本

在Dominic Tancredi的精彩回答的基础上,我将其转化为一个bash包和独立脚本。如果您已经在使用名为bpkg的“Back Package Manager”,则可以通过运行以下命令来安装脚本:

bpkg install -g brock/node-reinstall

或者您可以在Github上的brock/node重新安装中查看脚本。该脚本允许您使用nvm或nave重新安装节点,并将节点版本指定为默认版本。

我在一个有很多依赖Windows的角度项目上工作,运行的是Node 14.17.0。突然,我升级到Node最新版本16.4.2,并开始出现冲突。

我决定降级,而不是一直使用传统的对等dep。

从控制面板卸载的节点只需使用安装程序再次安装节点14

一切都好了。

也许你需要

hash -r 

它有助于解决符号链接问题

$ node -v
$ bash: /opt/local/bin/node: No such file or directory

我在mac上卸载Node.js时遇到了一个问题。我有一些奇怪的行为,比如npm仍然存在,即使在不得不删除它之后。

这是因为我用macport完成了旧的安装。因此,您还必须使用以下端口卸载它:

sudo port uninstall nodejs

它可能安装了许多不同版本的Node.js,所以请将它们全部卸载(逐个卸载)。