赞
踩
最近这几天想玩一玩angular最新版本,但本地的angular版本比较低,需要升级本地的angular版本,但又害怕升级以后本地之前的项目跑不起来,升级angular脚手架版本后,又需要用到更高的nodejs版本,经过百度,发现可以使用nvm工具管理多个nodejs版本,并且可以流畅的切换,于是就开始了windows10系统下多个版本的node和angular/cli的探索之路,害怕以后忘记,特意在这里记录一下。
我是小白,只想记录下探索成功的心得,如果对你现在遇到的问题有帮助的话,自然最好。大神的你如果看到有错误的,也可以帮忙指正。
1. 首先你的电脑上需要有scoop包管理工具,我百度了下,还挺好用的,但是具体怎么安装我不知道,只知道我要使用nvm的时候电脑上已经有了,有需要的话,你可以自行百度哦。下图是我电脑上scoop的文件目录:
2. 在命令行中输入nvm,如果有nvm的用法提示,证明你的nvm可以使用了。
3. 使用nvm安装你需要的nodejs,我安装了10.16.0和8.14.1两个版本
- nvm install 10.16.0 64
- nvm install 8.14.1 64
此时,C:\scoop\persist\nvm\nodejs 目录下回出现两个版本的nodejs包
安装成功后,按照提示,执行 nvm use 10.16.0或 nvm use 8.14.1 在刚刚的目录(C:\scoop\persist\nvm\nodejs)下会出现一个名为nodejs的映射文件,这个nodejs就存放着你当前使用的node版本的文件,每次执行 nvm use ‘版本号’ 命令,这个nodejs文件就会发生相应改变。
4. 执行 nvm use 8.14.1 ,切换至node 8.14.1版本,然后安装angular:npm install -g @angular/cli@7.2.1。
执行 nvm use 10.16.0 ,切换至node 10.16.0版本,然后安装angular:npm install -g @angular/cli@latest。
5. 执行 nvm list 可以查看当前安装的版本列表,以及当前应用的node版本,如下:
6. 成功后的截图
====至此,多node版本及@angular/cli版本管理就可以使用了,你就可以切换使用你的node环境了,但是真正尝试的时候,
可能会有很多问题,以下是我尝试过程中踩过的坑,希望对你有帮助~======
1. 执行下 nvm root , 我的根目录为:C:\scoop\persist\nvm\nodejs,我在折腾之前就是这个根目录,后期有过修改,但是行不通,最后都改回来了,如果你的也是这个类似路径,建议不要修改。
2. 安装版本的时候,如果想快速下载相关的node包,可以配置下setting.text。设置为:
- root: C:\scoop\persist\nvm\nodejs // 这个是上面提到的 nvm root 路径
- arch: 64
- proxy: none
- node_mirror: https://npm.taobao.org/mirrors/node/
- npm_mirror: https://npm.taobao.org/mirrors/npm/
下图中的这两个setting文件修改一个就行,因为他们是映射关系,修改一个,另一个就会改变。
3. npm 安装配置,我的.npmrc文件如下。
- cache=C:\dev\cache // 这个比较随意,自行配置就行。
- prefix=C:\scoop\persist\nvm\nodejs\nodejs // 这个比较重要,它是你当前使用的node版本目录
- registry=https://registry.npm.taobao.org/
- sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
- phantomjs_cdnurl=https://npm.taobao.org/mirrors/phantomjs/
- electron_mirror=https://npm.taobao.org/mirrors/electron/
4. 配置环境变量:
变量 | 值 | 备注 |
NVM_HOME | C:\scoop\apps\nvm\current | 这个找的是你的nvm.exe文件的地址 |
NVM_SYMLINK | C:\scoop\persist\nvm\nodejs\nodejs | 这个找的是步骤三设置的当前使用的node版本的node.exe文件的地址 |
然后在你当前使用的用户(我用户是默认的Administrator)的Path中添加上以下几个路径:
C:\scoop\apps\nodejs\current\bin | 这个是scoop配置的,我试图删掉这个,但是删掉这个以后,居然报window错误,让我联系软件厂商→_→ |
C:\scoop\apps\nodejs\current | 同上 |
C:\scoop\shims | 这个win10下可能安装scoop之后自动就会添加环境变量,这个是我感觉的,我没尝试,不负责的啊→_→。 |
D:\scoop\shims | 同上 |
C:\Users\Administrator\scoop\shims | 同上 |
%NVM_HOME% | 这个是上方设置的NVM_HOME,这个是重点 |
%NVM_SYMLINK% | 这个是上方设置的NVM_SYMLINK,这个是重点 |
5. 上图中的箭头1和箭头2其实是一个文件,箭头1文件是箭头2文件的映射。由于箭头1文件我删不掉,或者说我删掉报window错误,所以我只能写了个映射,让箭头1文件成为箭头2文件的映射。具体操作如下:
{C:\scoop\apps\nodejs目录下的current 是 C:\scoop\persist\nvm\nodejs\nodejs目录的映射}
1> 进入目标文件(也就是你要建立映射文件的目录下,我这里的路径是C:\scoop\apps\nodejs)
cd C:\scoop\apps\nodejs
2>. 建立映射,你可以对照你自己的路径执行这个命令。
mklink -D [映射过来的文件名,这里是current] [要映射的文件的路径,这里是C:\scoop\persist\nvm\nodejs\nodejs]
6.映射文件一般左下角会带个小箭头,其实我这个系统的scoop目录中还有其他的映射,但是这些在我操作的时候已经有了,我是分析我电脑上的scoop文件目录发现的。只有上面那个映射是我去建立的。
{C:\scoop\apps\nvm\current 目录下的nodejs 是 C:\scoop\persist\nvm\nodejs目录的映射}
{C:\scoop\apps\nvm目录下的current 是 与他同级的文件1.1.7的映射}
还没有自己装过scoop,只是看了下别人的安装记录,所以上面的记录有点半半拉拉的,如果我哪里说的不对,或者你有什么建议,欢迎提出来哦~ 大神看到也求多指点哦~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。