现在很多安装包要求不同的node版本,所以可以使用·NVM帮助我们管理 node版本
安装NVM
注:使用的第一个示例为win10系统,第二个示例为mac
地址为: https://github.com/coreybutler/nvm-windows/releases 点我.
建议使用nvm-setup.zip,下载后会得到.exe的安装程序(傻瓜式安装)。
验证是否安装成功
安装完成后可以输输入nvm version 来检测是否安装成功
安装切换各版本 node/npm
nvm install 11.15.0 // 安装11.15.0版本
nvm use 11.15.0 // 切换至 11.15.0版本
nvm uninstall 11.15.0 // 卸载11.15.0版本
配置淘宝镜像
由于nvm默认的下载地址http://nodejs.org/dist/是外国外服务器,国内很慢可以使用淘宝的镜像
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/
打nvm的安装路径把上面的镜像地址复制到settings.txt中就OK了。
如果nvm use 11.15.0失败的话用管理员权限打开再重新试一下。还是不行的话请把nvm安装在c:/nvm ,nodejs再没有空格和中文的目录中
npm 镜像问题
配置.npmrc文件改变npm包安装路径,需要将.npmrc文件加上 registry=https://registry.npm.taobao.org
或者使用代码段来配置:
// 设置淘宝镜像源
npm install -gd express --registry=http://registry.npm.taobao.org
npm config set registry http://registry.npm.taobao.org
// 设置为npm原始镜像
npm config set registry https://registry.npmjs.org/
可以用使用 nrm 来 管理镜像源
还可能遇到执行nvm,node,npm命令时报“ 不是内部或外部命令,也不是可运行的程序或批处理文件”的错误。
这时按照自己的安装路径配置下环境变量即可。
mac安装nvm
1.卸载已安装到全局的 node/npm
//卸载从官网下载的pkg文件的nodejs:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
// 卸载从homebrew 安装的node:
brew uninstall node
// 在终端输入 node -v npm -v 验证是否卸载完成
2.安装nvm
打开终端输入:
git clone https://github.com/nvm-sh/nvm.git
再进入 nvm目录中执行install.sh 等待执行完成
cd nvm //进入nvm目录
./install.sh //等待执行成功
3.配置nvm环境
进入bash中
vi ~/.bash_profile
按i进入写文件模式,将下列代码写入到到bash中
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
输入:wq保存并退出
进行文件更新
source ~/.bash_profile
验证:检测是否安装成功
nvm --version
// 同上1、nvm -v出现版本号表示安装完成
// 2、nvm install 20.4.0 安装你想要的版本
// 3、nvm use 20.4.0 切换Node版本
切换后mac nvm管理node,vscode与终端node版本不一致
在终端里,通过 nvm list 会发现他有一个默认的 default node的版本,这个不改的话,vscode的版本就不会更改,可以通过 nvm use ‘版本号’ nvm alias default ‘版本号’ 即可。
nvm use 20.4.0
nvm alias default 20.4.0
关闭vscode,重新打开
mac安装NVM后每次打开终端提示zsh compinit: insecure directories and files, run compaudit for list.Ignore insecure directories and files and continue [y] or abort compinit [n]?
原因:这个警告意味着您正在尝试使用 Zsh shell 的自动完成功能 (compinit),但是存在不安全的目录或文件,可能会导致潜在的安全问题。
就是设置执行compinit时认为不安全的目录或文件的权限为更安全的选项
运行compaudit命令查看哪些目录或文件是不安全的
例:我这列出的是
/usr/local/share/zsh/site-functions
/usr/local/share/zsh
解决方法:分别设置以上两个目录的权限为rwx------,意味着只有拥有者可以读、写和执行该目录
chmod 700 /usr/local/share/zsh/site-functions
chmod 700 /usr/local/share/zsh
关闭vscode,重新打开