为什么我需要从我的计算机上卸载节点才能使用 nvm?
Why do I need to uninstall node from my computer to use nvm?
我最近决定安装 nvm,说明让我卸载节点。我注意到,如果我明确告诉 nvm 使用某个版本,它会从 nvm 目录中使用它,否则它会使用我的 bin/node 目录,所以我没有注意到冲突。当我卸载节点时,我需要在每次使用我的终端时指定一个版本,这似乎是一个不必要的步骤,因为我可以通过 brew 安装节点并在需要版本控制时使用 nvm。
一旦你安装了 nvm
并通过它使用 Node,它不会使用 bin/node
,而是使用 nvm
安装的版本,所以你的旧 Node 已经过时了。
他们建议您卸载 Node 的主要原因是因为它可能会使 shell 混淆使用哪个 Node。当然,您可以更新您的 shell 配置,以便它首先查找从 nvm 安装的 Node,但这是一个不必要的额外步骤,并且您的旧 Node 发行版在您的磁盘上充其量已过时。
因此,最好的解决方案是卸载旧发行版并安装 nvm
(默认情况下会在您的 .nvm
文件夹中安装最新的 Node),并在必要时安装更多版本的 Node。
关于这个:
i needed to specify a version every time I use my terminal which seems like an unnecessary step
您不需要,只要在安装 nvm
后使用以下命令设置默认版本(例如 11.15.0)配置即可:
nvm alias default 11.15.0
我最近决定安装 nvm,说明让我卸载节点。我注意到,如果我明确告诉 nvm 使用某个版本,它会从 nvm 目录中使用它,否则它会使用我的 bin/node 目录,所以我没有注意到冲突。当我卸载节点时,我需要在每次使用我的终端时指定一个版本,这似乎是一个不必要的步骤,因为我可以通过 brew 安装节点并在需要版本控制时使用 nvm。
一旦你安装了 nvm
并通过它使用 Node,它不会使用 bin/node
,而是使用 nvm
安装的版本,所以你的旧 Node 已经过时了。
他们建议您卸载 Node 的主要原因是因为它可能会使 shell 混淆使用哪个 Node。当然,您可以更新您的 shell 配置,以便它首先查找从 nvm 安装的 Node,但这是一个不必要的额外步骤,并且您的旧 Node 发行版在您的磁盘上充其量已过时。
因此,最好的解决方案是卸载旧发行版并安装 nvm
(默认情况下会在您的 .nvm
文件夹中安装最新的 Node),并在必要时安装更多版本的 Node。
关于这个:
i needed to specify a version every time I use my terminal which seems like an unnecessary step
您不需要,只要在安装 nvm
后使用以下命令设置默认版本(例如 11.15.0)配置即可:
nvm alias default 11.15.0