window下使用nvmw控制nodejs的版本
本文项目所用到的工具已经不能使用,当前使用nvm即可
一下内容已经不能使用
安装缘由(可以直接略过)
最近做vue项目从1.x迁移到2.x,升级的时候,由于之前的node环境是拷贝别人的,所有通过npm install -g ... 安装的模块不能直接用命令使用,所以安装了最新的node版本6.9.2,但是安装后出现path错误,通过查询得知需要经node从6.x降到5.x或者将babel-core升级>6.11.0(这个具体多少没测试,可以直接看"TypeError: Path must be a string" after break from project · Issue #2463 · webpack/webpack · GitHub )
截屏使用nvmw管理node版本
有个n和nvm模块可以管理node版本,但是这家伙只能在mac上使用,window不能使用,nvmw专门针对的是window使用的,所以没得选择了,这是nvmw的连接地址(GitHub - hakobera/nvmw: Simple Node Version Manager for Windows ),还有一个地址是支持4.0.0以上的(GitHub - TimothyGu/nvmw: Simple Node Version Manager for Windows (with support for Node.js ≥ 4.0.0) ),我用的是第一个的,支持4.0.0以上的没有使用过,这个可能将要说的坑填掉了(属于个人猜测)!
在github将nvmw下载到本地,解压出来后,将环境变量配置中PATH配置好,就可以使用了,或者直接使用作者个给的方式使用
git clone git://github.com/hakobera/nvmw.git "%HOMEDRIVE%%HOMEPATH%\.nvmw"
自动创建和下载文件
截图2配置环境变量PATH,使用cmd命令
set "PATH=%HOMEDRIVE%%HOMEPATH%\.nvmw;%PATH%"
截图3安装就算完成了,使用直接在cmd中输入nvmw就可以看见
截图4直接使用nvmw ls查看你都安装了哪些版本,应该是空的,虽然你安装了nodejs,当前版本也是空的,这是因为.nvmw中没有相应的版本,所以你什么也查不到,接下来,你以为可以通过nvmw install 5.8.0安装5.8.0版本,那天朝是做不到的。好在作者考虑到中国码农的艰辛,所以特别对China做的说明,这个就在开始给的github连接上,两个都有的
截图5只需将上面三个set复制到cmd命中执行就可以了,下载地址就转为toabao镜像了
截图6这是使用nvmw install 6.9.2 ,会看到一下内容,失败,npm没有,有点莫名其妙了
截图7这个需要做几件事,
1、修改原代文件nvmw.bat中137行将x64改为win-x64(这个就不发截图了),这是因为taobao镜像路径就是这样的
截图82、自己下载npm压缩包(GitHub - npm/npm: a package manager for javascript ),版本自己选择,在releases选择自己需要的版本下载(这个比较简单,不会的私聊吧),这块我下载的是最新的4.1.1版。
3、在.nvmw文件夹中创建v6.9.2文件夹,名字不能随便改,和你安装的node版本必须一致,否则就和上面刚出现的错误一样,并将刚刚下载npm压缩包放到这个文件夹中,将文件名中的版本号删除,改为npm.zip(必须的)
截图94、现在是用cmd命令 nvmw install 6.9.2,安装成功,并且自动切换到6.9.2版本,我们可以使用node -v 和npm -v 查看当前node和npm版本,文件夹也多了一些内容。(这其中要弹出防火墙警告,选择允许或是即可)
版本切换中版本切换
使用nvmw ls 查看都安装哪些版本和当前使用的版本(当然切换前,你肯定不能只装一个node版本的啊)
版本切换使用nvmw use v....切换版本
切换截图对于之前网上说的nvmw版本切换时,全局模块要重新安装,我并没有遇到过,可能作者已经将这个缺陷修改了吧,给出v5.8.0安装的全局模块,切换到v6.9.2依旧完好
5.8.0版本 切换后的6.9.2版本到现在,版本控制的基本使用就暂时告一段落了。有什么问题,可以及时留言,我也是初学者,希望大家能交流一下!