##-----node版本管理工具nvm
–安装
下载地址:
https://github.com/coreybutler/nvm-windows/releases
–四个文件的解释如下:
nvm-noinstall.zip: 绿色免安装版本,需要配置之后才能使用;
nvm-setup.zip:windows安装包,不需要配置直接使用(推荐使用); Source code(zip):zip压缩的源码
Sourc code(tar.gz):tar.gz的源码
-推荐使用安装包:nvm-setup.zip,注意:下载完成之后,先不要着急安装,看完下文的“注意点”之后再进行安装,才能保证nvm能够正常使用。
–注意点
1> 安装nvm之前先卸载之前安装的node;
2> 安装nvm途中,设置node路径地址时,路径尽量不能包含空格;
3> 安装成功后,执行命令窗口的时候,尽量使用管理员身份,进行命令输入与执行,保证nvm的顺利使用;
–windows安装nvm的两种方式:
1> 用nvm-setup.zip安装
2> 用nvm-noinstall.zip安装
一>
1> nvm-setup.zip包解压后只有一个nvm-setup.exe,安装到你想安装目录中(如:c:/node/nvm和C:\node\nodejs),点击下一步
2> 环境变量会自动配置的
二>
1> 把nvm_noinstall.zip解压到比如c:/node/nvm 中
2> 右键以管理员的身份运行install.cmd.直接按回车,在C盘根目录下会生成一个setting,txt.并拷贝到C:/node/nvm.修改内容:
root: C:\node\nvm
path: C:\node\nodejs
arch: 64
proxy: none
3> 配置环境变量
建议在‘用户变量’里面设置:
NVM_HOME:C:\node\nvm
NVM_SYMLINK:C:\node\nodejs
PATH:%NVM_HOME%;%NVM_SYMLINK%(在PATH的最后添加%NVM_HOME%;%NVM_SYMLINK%)
4> npm全局安装(不推荐使用,虽然这样可以避免换版本时,重新安装模块,但是每个版本的node使用的模块可能不兼容,nvm本身会针对每个版本模块进行隔离的)
npm config set prefix “c:\dev\nvm\npm”(配置用npm下载包时全局安装的包路径,实现共享)
npm install npm -g –registry=https://registry.npm.taobao.org
–注意:
配置用npm下载包时全局安装的包路径,把“c:\node\nvm\npm”改成自己想要的路径,并把生成的文件‘.npmrc’放到你的用户目录下
5> 配置npm环境变量
变量名: NPM_HOME 变量值: c:\dev\nvm\npm (一定要放在NVM_SYMLINK之前);
–补:nvm实现node版本管理的原理(对于新版本nvm不是很正确,但是可参考) http://www.01happy.com/nodejs-nvm-use-and-principle/
##-----nvm安装node
nvm //查看可用命令
nvm install 8.9.2 //安装
nvm use 8.9.2 //使用
–注意(重点理解):
安装完之后,会出现在nvm目录下,然后要使用nvm use 8.9.2
才会在c:\node目录下出现nodejs的,这是node才可以使用
然后npm安装模块的时候,nodejs下的东西会同步到nvm/v8.9.2下(怎么同步的?nodejs文件夹右键查看属性会有个快捷方式,比较其他文件夹是没有的,你就懂了,还不懂的话,mklink了解一下),
这时,如果安装了另一个版本(比如:8.9.1),会在nvm下出现v8.9.1,然后使用nvm use 8.9.1
这样nodejs目录下的文件就会切换v8.9.1目录下的文件了(这就是前面说为啥不配做全局npm路径共用,怕版本不兼容模块,还是每个版本管理自己的就好,.)
就是这样实现版本管理和切换的.
window下比较:
--直接安装的node.js
npm config get prefix
> C:\Users\你的主机名\AppData\Roaming\npm
--nvm安装的node
npm config get prefix
> C:\node\nodejs
(这说明nvm修改过node的配置)
–如何删除npm之前设置:
删除C:\用户\你的主机名.npmrc这个文件里面的一些配置
–如何查看npm配置:
npm config list //查看基本配置
npm config list -l //查看所有配置
npm config get prefix //获取全局安装的默认目录
npm config set prefix=“xxx” //设置配置
npm install xxx // 本地安装,则是将模块下载到当前命令行所在目录。
npm install -g xxx//全局安装,模块将被下载安装到全局目录中;
npm uninstall xxx // 本地卸载
npm uninstall -g xxx//全局卸载