最近在家里电脑重装了系统,重装了nvm,记录下来,方便大家避坑介绍什么是nvm?和npm有什么关系?npm:是nodejs包的管理工具。在安装node的时候,npm也会自动安装,因为每个node版本都有对应的npm版本。nvm:是一个node版本管理工具,可以在电脑上同时安装多个不同的版本。版本节点,非常方便的操作不同版本节点的切换、安装、查看等。nvm有什么好处?比如当你的电脑上可能运行多个项目,不同项目需要的node版本不一致时;比如升级项目的node版本,发现有问题,需要切换回之前的版本;如果每次卸载电脑都要从网上的node上下载新版本,但是太无聊了,所以nvm就来了,一个直接的命令就可以让我们在不同的node版本之间切换,非常方便。如果你的电脑上安装过node,那么在安装nvmUninstall之前一定要先安装它,以免后面出现不必要的冲突。卸载Window控制面板程序或使用其他应用程序进行卸载。Mac卸载:#删除全局node_modules目录sudorm-rf/usr/local/lib/node_modules#删除节点sudorm/usr/local/bin/node#删除全局节点模块注册的软链接cd/usr/local/bin&&ls-l|grep"../lib/node_modules/"|awk'{print$9}'|xargsrmMacinstallnvmMacnvm文档安装命令curl-o-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh|bash或wget-qO-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh|bash命令中的v0.39.2为版本号,为Mac最新版本。如果需要安装不同的版本,可以在这里修改。安装完成后,在命令行窗口输入nvm回车,安装成功会出现一个满是各种信息的页面,如果只有nvm:commandnotfound,说明安装不成功。如果安装不成功,执行echo$0命令查看当前shell是bash还是zsh。如果bash安装失败,基本没有.bash_profile文件。可以用open.bash_profile命令打开这个文件试试,如果打不开,说明没有,然后执行下面的命令创建一个,然后重新执行上面的安装命令#create一个.bash_profile文件touch~/.bash_profile如果是zsh,那么打开打开的.zshrc文件,在里面添加一行source~/.bash_profile。如果打不开这个文件,先创建一个,然后添加,然后重新执行上面的安装命令。#创建.zshrc文件touch~/.zshrc#创建完成后,再次打开。在里面添加这个source~/.bash_profile以及安装成功后如何使用。Window安装请继续看nvmnvm下载地址。在下载页面找到并下载如图:安装过程中一路点击next进入C盘(也可以自定义目录),这里执行nvm命令肯定不会失败,下一步是安装节点。例如安装16.16.0版本的node,执行如下命令。版本号前加不加v是完全一样的#nvminstallv16.16.0nvminstall16.16.0注意这里的install不能省略为i,会报错。安装可能会失败,可能会成功,也可能会成功一半。一半成功表示node安装成功,但是npm安装失败,终端不显示。会提示这个失败信息,但是安装完成后,输入node-v带值,npm-v会报错。所以建议在使用nvminstallxxxx之前先打开nvm安装目录下的settings.text,如图:在这个文件中添加下面两行代码,然后保存就是安装node和npmusing淘宝镜像,然后运行nvminstallxxxx,安装不会失败你可以放心。这里的淘宝镜像只针对node和npm的安装。不是项目中的npmixxx。也就是淘宝镜像的意思。该项目需要单独配置。项目中使用的淘宝镜像如下:#npm使用淘宝镜像npmconfigsetregistryhttp://registry.npm.taobao.org/#或者installcnpmnpminstall-gcnpm--registry=https://registry。npm.taobao.orgcnpmconfigsetregistryhttps://registry.npm.taobao.orgcnpmconfiggetregistrycnpm-v如果不想使用淘宝镜像,但是出现node安装了但是没有npm的问题,您只能手动安装npm。查看不同版本node对应的npm版本号如下:点击前往下载对应的一个npm版本的zip文件:点击前往下载的文件:将解压后的文件夹(cli-xxxx)重命名为npm并放入放在对应node版本的node_modules文件夹下,然后打开npm文件夹下的bin文件夹。复制里面的npm文件和npm.cmd文件,放到对应的node版本下,与node_modules文件夹同级。上述操作完成后,执行node-v和npm-v,然后需要执行nvmon命令才能使用nvm管理node,如果该命令报错,请在管理员中打开cmd或powershell模式,然后执行nvmon。nvmcommoncommands是比较常用的命令,注意注释nvminstall
