详解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 相关文章推荐
原生js 秒表实现代码
Jul 24 Javascript
7个有用的jQuery代码片段分享
May 19 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
May 25 Javascript
js获取字符串字节数方法小结
Jun 09 Javascript
Javascript HTML5 Canvas实现的一个画板
Apr 12 Javascript
前端框架Vue.js构建大型应用浅析
Sep 12 Javascript
js canvas实现擦除效果示例代码
Apr 26 Javascript
vue动态改变背景图片demo分享
Sep 13 Javascript
微信小程序的开发范式BeautyWe.js入门详解
Jul 10 Javascript
vue 查看dist文件里的结构(多种方式)
Jan 17 Javascript
jQuery实现移动端下拉展现新的内容回弹动画
Jun 24 jQuery
微信小程序实现滚动Tab选项卡
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中使用灵巧的体系结构
2006/10/09 PHP
Thinkphp事务操作实例(推荐)
2017/04/01 PHP
PHP调用接口用post方法传送json数据的实例
2018/05/31 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
php实现的生成排列算法示例
2019/07/25 PHP
jQuery学习笔记之jQuery选择器的使用
2010/12/22 Javascript
基于JQuery的动态删除Table表格的行和列的代码
2011/05/12 Javascript
div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
2013/08/29 Javascript
jQuery点击自身以外地方关闭弹出层的简单实例
2013/12/24 Javascript
如何使用jquery easyui创建标签组件
2015/11/18 Javascript
JS字符串的切分用法实例
2016/02/22 Javascript
浅谈JS继承_借用构造函数 & 组合式继承
2016/08/16 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
2017/01/11 Javascript
node.js中debug模块的简单介绍与使用
2017/04/25 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
2017/06/15 Javascript
基于vue-ssr服务端渲染入门详解
2018/01/08 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
2020/09/01 Javascript
Nodejs实现微信分账的示例代码
2021/01/19 NodeJs
[04:56]经典回顾:前Ehome 与 前LGD
2015/02/26 DOTA
[26:40]DOTA2上海特级锦标赛A组资格赛#1 Secret VS MVP.Phx第一局
2016/02/25 DOTA
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
python3的输入方式及多组输入方法
2018/10/17 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
Python3.5文件修改操作实例分析
2019/05/01 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
Python 代码调试技巧示例代码
2020/08/11 Python
Html5 localStorage入门教程
2018/04/26 HTML / CSS
运动鞋中的劳斯莱斯:索康尼(SAUCONY)
2017/08/09 全球购物
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
俄罗斯韩国化妆品网上商店:Cosmasi.ru
2019/10/31 全球购物
欧姆龙医疗保健与医疗产品:Omron Healthcare
2020/02/10 全球购物
AOP的定义以及作用
2013/09/08 面试题
给女朋友道歉的话大全
2015/01/20 职场文书
python实现局部图像放大
2021/11/17 Python
windows10声卡驱动怎么安装?win10声卡驱动安装操作步骤教程
2022/08/05 数码科技