mac 下 node 版本切换

mac 下 node 版本切换

hexo 不支持 新版的node,需要切换为旧版本

使用nvm 可以进行版本切换。

安装

1
brew install nvm

编辑.zshrc

1
2
3
export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh" # This loads nvm
[ -s "/usr/local/opt/nvm/etc/bash_completion.d/nvm" ] && . "/usr/local/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion

重载zsh

1
. ~/.zshrc

使用

查看有哪些版本可以被安裝

1
nvm ls-remote

指定想要的版本

1
nvm install <version>

安裝目前的穩定版

1
nvm install stable

自动切换

项目文件夹运行

1
node -v > .nvmrc

.zshrc 加入钩子

作用:cd进入文件夹是自动切换为设定的node版本,未设定时切换为系统默认版本。

1
2
3
4
5
6
7
8
9
10
11
autoload -U add-zsh-hook
load-nvmrc() {
if [[ -f .nvmrc && -r .nvmrc ]]; then
nvm use
elif [[ $(nvm version) != $(nvm version default) ]]; then
echo "Reverting to nvm default version"
nvm use default
fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc

帮助文档