详解nvm管理多版本node踩坑


Posted in Javascript onJuly 26, 2019

Windows10

本机环境:win10

未安装node,安装了nvm工具,尝试使用nvm安装我开发环境的node版本(10.9.0 or later)

详解nvm管理多版本node踩坑

根据上面的截图看,应该是npm下载失败了,需要手动安装,我们使用命令查看node安装情况

nvm use 10.9.0
v10.9.0

node安装没问题,尝试安装单独的npm包的时候出问题了,上述的网站已经移植更改到 https://npm.community/

然而这个网址很难打开,即使翻墙,github上也没有直接安装的包,暂时告一段落,接下来看下安装一个低版本node。

nvm install 6.9.0

这次安装提示everything completed!
测试下:

nvm use 6.9.0
v6.9.0
npm -v
3.10.8

详解nvm管理多版本node踩坑

浏览下6.9.0版本node文件结构:

详解nvm管理多版本node踩坑

其中node_modules下有个npm的文件夹,打开就是npm所有的文件系统,萌生2个方案
方案1:https://github.com/npm/cli

下载里面的文件打包解压后放到新版本10.9.0文件夹下;

方案2:手动安装新版node,将下载的npm相关资源复制移动到10.9.0下;

下载好后的压缩包解压,查看文件结构后正确的放入文件夹下,将6.9.0下的npm、npm.cmd(打开后里面的代码应该是通用的配置可以直接进行复制使用)copy 到10.9.0文件夹下,测试看看

node -v
v10.9.0
npm -v
6.10.2(因为最新版的,并不是6.2.0,因为提供的网址打不开,不然应该找对应版本的npm)

安装全局的依赖:

npm install @angular/cli -g
npm install @tarojs/cli -g

可以正常工作了,到这里其实必须要采用方案2 进行测试,因为多版本node不可能只是2个版本,方案1在github只能下载比较新的npm,遇到大版本往前的只能用从node官网下载安装,去除npm包。。。,从这点来说nvm并不好用,失去了工具的灵活性、简单性特点。

新需求需要8.x版本的node,

nvm install 8.16.0

详解nvm管理多版本node踩坑

采用方案2解决:
https://nodejs.org/dist/latest-v8.x/
下载zip包,解压,直接上图,看清楚路径,然后替换全部

详解nvm管理多版本node踩坑

详解nvm管理多版本node踩坑

结论:window10系统下(询问过其他win7系统的朋友无安装不了npm的问题),nvm部分新版本node安装的时候npm因未知原因,无法安装,需要个人手动安装npm,根据提示得到的解决方案就是文中所提供的截图;

另外很久以前就有人质疑过winodw上用nvm效果不是很好,建议用nvs,本人下一篇的文章会进行介绍和使用(ps:每次折腾这类问题我都卸载本机安装好的环境,够意思了?)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
iframe 父窗口和子窗口相互的调用方法集锦
Dec 15 Javascript
浅谈Javascript的静态属性和原型属性
May 07 Javascript
JavaScript文本框脚本编写的注意事项
Jan 25 Javascript
BootStrap扔进Django里的方法详解
May 13 Javascript
JS实现留言板功能[楼层效果展示]
Dec 27 Javascript
详解vue-element Tree树形控件填坑路
Mar 26 Javascript
pm2启动ssr失败的解决方法
Jun 29 Javascript
layui select 禁止点击的实现方法
Sep 05 Javascript
jquery 时间戳转日期过程详解
Oct 12 jQuery
修改vue源码实现动态路由缓存的方法
Jan 21 Javascript
Vue列表如何实现滚动到指定位置样式改变效果
May 09 Javascript
Vue如何实现组件间通信
May 15 Vue.js
layui自定义ajax左侧三级菜单
Jul 26 #Javascript
layui递归实现动态左侧菜单
Jul 26 #Javascript
bootstrap-treeview实现多级树形菜单 后台JSON格式如何组织?
Jul 26 #Javascript
bootstrap-table+treegrid实现树形表格
Jul 26 #Javascript
Vue实现商品分类菜单数量提示功能
Jul 26 #Javascript
vue实现滑动切换效果(仅在手机模式下可用)
Jun 29 #Javascript
微信小程序设置滚动条过程详解
Jul 25 #Javascript
You might like
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
PHP cURL获取微信公众号access_token的实例
2018/04/28 PHP
jquery插件制作 自增长输入框实现代码
2012/08/17 jQuery
js隐藏与显示回到顶部按钮及window.onscroll事件应用
2013/01/25 Javascript
使用JQuery快速实现Tab的AJAX动态载入(实例讲解)
2013/12/11 Javascript
jQuery对象初始化的传参方式
2015/02/26 Javascript
基于javascript实现右下角浮动广告效果
2016/01/08 Javascript
JavaScript之WebSocket技术详解
2016/11/18 Javascript
快速实现JS图片懒加载(可视区域加载)示例代码
2017/01/04 Javascript
解决AjaxFileupload 上传时会出现连接重置的问题
2017/07/07 Javascript
javascript ES6 新增了let命令使用介绍
2017/07/07 Javascript
React进阶学习之组件的解耦之道
2017/08/07 Javascript
JavaScript获取用户所在城市及地理位置
2018/04/21 Javascript
Layui多选只有最后一个值的解决方法
2019/09/02 Javascript
python调用java的Webservice示例
2014/03/10 Python
零基础写python爬虫之神器正则表达式
2014/11/06 Python
详解Python中的join()函数的用法
2015/04/07 Python
PyMongo安装使用笔记
2015/04/27 Python
基于wxpython开发的简单gui计算器实例
2015/05/30 Python
Python3.7 dataclass使用指南小结
2019/02/22 Python
使用python的pandas为你的股票绘制趋势图
2019/06/26 Python
Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答
2019/08/13 Python
详解pyinstaller生成exe的闪退问题解决方案
2020/06/19 Python
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
2015/09/11 面试题
一份软件工程师的面试试题
2016/02/01 面试题
纪检监察建议书
2014/05/19 职场文书
医院义诊活动总结
2014/07/04 职场文书
网吧消防安全责任书
2014/07/29 职场文书
公务员党员评议表自我鉴定
2014/09/14 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
工作年限证明模板
2014/11/01 职场文书
2014年村计划生育工作总结
2014/11/14 职场文书
统计工作个人总结
2015/03/03 职场文书
红白喜事主持词
2015/07/06 职场文书