目录
前言:
nvm是node管理工具,在项目开发中经常遇到node版本过高或过低的问题。这时利用nvm就可以很好的解决这个问题。
nvm是一个大家长管着node和npm这两个兄弟,npm是和node一起安装的。所以不用担心npm的问题,没有node就没有npm。
安装前:
卸载已经安装好的node,将以下命令在终端依次执行即可:
npm ls -g --depth=0
sudo rm -rf /usr/local/lib/node_modules
sudo rm /usr/local/bin/node
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm
安装nvm:
我现在最新的版本就是v0.39.1 所以我现在的最新安装命令就是下面这条。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
执行完安装命令后,再复制下面的代码执行:
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
安装后:
执行nvm -v 出现版本号就是安装成功了
nvm的使用:
每次终端关闭。nvm命令都不能使用,提示commond not found:nvm,
第一个办法,执行下面的代码,保证nvm的正常使用:
source ~/.bash_profile
第二个办法配置 .bash_profile 和 .zshrc:
.bash_profile文件,重新打开一个终端窗口,输入 vim ~/.bash_profile ,创建.bash_profile文件。复制下面的代码粘贴在创建的文件中。然后按 :wq!保存并退出当前文件的编辑。如果本来就有.bash_profile文件了,那么vim ~/.bash_profile时,是无法创建的。这时就要用open ~/.bash_profile命令,打开文件,同理,复制下面的代码在文本中保存并退出。
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
.bash_profile文件配置成功后,在终端执行下面的代码,让配置内容生效:
source ~/.bash_profile
.zshrc文件,输入 vim ~/.zshrc ,创建.zshrc文件。复制下面的代码粘贴在创建的文件中。然后按 :wq!保存并退出当前文件的编辑。如果本来就有.zshrc文件了,那么vim ~/.zshrc时,是无法创建的。这时就要用open ~/.zshrc命令,打开文件,同理,复制下面的代码在文本中保存并退出
export NVM_DIR=~/.nvm
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
.zshrc文件配置成功后,在终端执行下面的代码,让配置内容生效:
source ~/.zshrc
这时,即便是关了终端再打开,nvm也是可以正常使用的了。
设置nvm淘宝镜像:
因为nvm默认是使用的国外的镜像源,所以下载的时候非常慢,而且还经常下载失败。这个时候就可以配置一下nvm的淘宝镜像。下载速度就会超级快。
在终端执行以下命令,淘宝镜像就配置成功了:
NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
nvm常用命令:
nvm ls -列出所有已安装的 node 版本
nvm ls-remote -列出所有远程服务器的版本(官方node version list)
nvm list -列出所有已安装的 node 版本
nvm list available -显示所有可下载的版本
nvm install stable -安装最新版 node
nvm install [node版本号] -安装指定版本 node
nvm uninstall [node版本号] -删除已安装的指定版本
nvm use [node版本号] -切换到指定版本 node
nvm current -查看当前 node 版本
nvm alias [别名] [node版本号] -给不同的版本号添加别名
nvm unalias [别名] -删除已定义的别名
nvm alias default [node版本号] -设置默认版本