详解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 相关文章推荐
jQuery怎么解析Json字符串(Json格式/Json对象)
Aug 09 Javascript
jquery网页回到顶部效果(图标渐隐,自写)
Jun 16 Javascript
jQuery实现的多屏图像图层切换效果实例
May 07 Javascript
JavaScript中的Math.atan2()方法使用详解
Jun 15 Javascript
详解JS几种变量交换方式以及性能分析对比
Nov 25 Javascript
实例解析angularjs的filter过滤器
Dec 14 Javascript
JS多物体实现缓冲运动效果示例
Dec 20 Javascript
javascript实现数据双向绑定的三种方式小结
Mar 09 Javascript
Bootstrap实现各种进度条样式详解
Apr 13 Javascript
vue实现页面加载动画效果
Sep 19 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
May 06 Javascript
Vue中使用JsonView来展示Json树的实例代码
Nov 16 Javascript
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蜘蛛统计插件只要有mysql就可用
2010/10/12 PHP
PHP学习散记_编码(json_encode 中文不显示)
2011/11/10 PHP
php实现的短网址算法分享
2014/06/20 PHP
PHP多进程编程实例
2014/10/15 PHP
thinkPHP简单遍历数组方法分析
2016/05/16 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
thinkPHP和onethink微信支付插件分享
2019/08/11 PHP
angularjs的一些优化小技巧
2014/12/06 Javascript
js实现编辑div节点名称的方法
2014/12/17 Javascript
原生js实现移动开发轮播图、相册滑动特效
2015/04/17 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
AngularJS折叠菜单实现方法示例
2017/05/18 Javascript
vue 设置proxyTable参数进行代理跨域
2018/04/09 Javascript
JS使用正则表达式获取小括号、中括号及花括号内容的方法示例
2018/06/01 Javascript
Node.js中你不可不精的Stream(流)
2018/06/08 Javascript
Angular4 组件通讯方法大全(推荐)
2018/07/12 Javascript
js使用ajax传值给后台,后台返回字符串处理方法
2018/08/08 Javascript
vue实现点击隐藏与显示实例分享
2019/02/13 Javascript
JS使用数组实现的队列功能示例
2019/03/04 Javascript
Python3处理文件中每个词的方法
2015/05/22 Python
Python模拟自动存取款机的查询、存取款、修改密码等操作
2018/09/02 Python
对Python Class之间函数的调用关系详解
2019/01/23 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
PyQt5中多线程模块QThread使用方法的实现
2020/01/31 Python
python zip()函数的使用示例
2020/09/23 Python
CSS3 animation ? steps 函数详解
2019/08/30 HTML / CSS
优秀毕业生求职信
2014/06/05 职场文书
服务员态度差检讨书
2014/10/28 职场文书
2014超市收银员工作总结
2014/11/13 职场文书
2014年民警工作总结
2014/11/25 职场文书
2015年项目工作总结
2015/04/29 职场文书
检讨书格式
2015/05/07 职场文书
redis哨兵常用命令和监控示例详解
2021/05/27 Redis
JavaScript流程控制(循环)
2021/12/06 Javascript
如何利用python实现列表嵌套字典取值
2022/06/10 Python
jdbc中自带MySQL 连接池实践示例
2022/07/23 MySQL