写这篇文章之前我遇到了一个坑,为了一个坑我花了两天时间去搞懂里面的原理。


接下来我会围绕以下几点进行分析:

1- npm 降级

2- npm 升级

3- 如何清除已设置的npm淘宝镜像

4- 突发意外:node 和 npm 不兼容出现问题

5- antd 升级问题


npm降级

在 create-react-native-app 的时候发现,它们“强烈推荐”使用npm v3或者v4,因为v5还有些bug没解决,对于create-react-native-app不稳定
简单暴力的方法是

npm i npm@4 -g

但是这样子的太暴力,容易出现 node 版本和 npm 版本不兼容的问题。
所以这里推荐nvm ,进行node版本管理。

nvm是个啥?
nvm是一个可以让你在同一台机器上安装和切换不同版本node的工具!!!!

nvm地址: https://github.com/coreybutler/nvm-windows
nvm下载:https://github.com/coreybutler/nvm-windows/releases

进入到下载页,选择最新发版的1.1.5版本,nvm-setup.zip进行下载,并且安装。预发行的,一般都不太稳定。

重点:

第一: windows用户安装windows补丁: http://www.3322.cc/soft/20130711258.html
第二: 在安装NVM for Windows之前,您需要卸载任何现有版本的node.js。
同时删除可能保留的任何现有nodejs安装目录(例如,“C:\ Program Files \ nodejs”)。

{ NVM生成的符号链接不会覆盖现有的(甚至是空的)安装目录 }

还应该删除现有的npm安装位置(例如“C:\ Users \ AppData \ Roaming \ npm”),以便正确使用nvm安装位置。安装完成后,必须为每个安装的节点版本重新安装全局实用程序(例如gulp)。

{ 对于我们项目来说:用户使用防病毒报告了一些问题,特别是McAffee }

安装nvm

在git中安装:

1- 安装

     curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash

2- 查看版本

nvm –version

3- 查看所有node版本

nvm ls-remote

4- 切换node版本

nvm use v7.9.0


如何清除已设置的npm淘宝镜像

方法一:

设置淘宝的镜像是:

npm config set registry https://registry.npm.taobao.org

不想用他们的,再设置回原来的就可以了:

npm config set registry https://registry.npmjs.org

方法二:

npm config delete registry
npm config delete disturl

方法三: 使用nrm (镜像管理)

看上面的命令不用我多说了,安装,查看,切换镜像。


npm升级

方法一:

最粗暴办法:

npm install -g npm

方法二:

或者gnvm 切换node版本

1- 将gnvm放到node的根目录

2- 安装gnvm

先将 gvnm.exe放到node的根目录下面;

然后下面我再介绍使用办法:

突发意外:node 和 npm 不兼容出现问题

比如同学或者同事把node和npm搞坏了,这个时候要怎么办呢?比如这个

不要以为是少了一个包,试图去安装这个包没用的

更新npm 版本,npm升级没用的!!!

于是乎,我去github转了一圈,发现最近刚好有人遇到和我一样的问题


然后解决办法是这样子的:


黑人小哥回复我, 需要删除node 相关的依赖和环境变量和node, 然后在重新安装。

于是乎我去删除:

然后重新安装了node ,发现就好了。这里呢,外国小哥,并没有说明为什么会有这样子的问题。

其实我理解为,对于node 和npm 都是先关连的,就像硬件的兼容性一样,不一定都是稳定配置或者高配置就可以结合在一起,两者之间都是有相互作用的。

补充一个 antd design 2.0版本的一个BUG

关于antd2.9 版本以前对于,表单中 下拉选择中历史记录并未做处理,在2.9版本之后进行了,添加原生 antocomplete=”off”,所以升级到2的最后一个版本2.13.14

效果展示:

git上的解释为:

解决办法:

npm install antd@2.x
升级antd到2的最后一个版本,不要到3 要不会出现一些问题。

这时候你查看 package.json文件

参考链接:

  • node官网
    https://nodejs.org/en/download/
  • gnvm官网:
    https://github.com/Kenshin/gnvm
  • antd官网
    http://ant.design/index-cn
  • git问题地址:
    https://github.com/npm/npm/issues?utf8=✓&q=Cannot+find+module+'internal%2Futil%2Ftypes'
  • nvm 地址
    https://www.npmjs.com/package/nvm
  • nrm 地址
    https://www.npmjs.com/package/nrm

node npm nrm nvm gnvm 相爱相杀相关推荐

  1. 阿里云CDN技术掌舵人文景:相爱相杀一路狂奔的这十年

    提到阿里云CDN,不得不提技术掌舵人姚伟斌(文景),虽然他不是团队中最"老"的同学,但他却历经了淘宝业务发展最为飞速的几年,见证了从最初服务淘宝和集团内部的CDN,到如今国内服务客 ...

  2. 人类一败涂地电脑版_iOS账号分享 |人类一败涂地 我们继续相爱相杀,PC大火游戏移植!...

    「 改变能改变的一切,接受不能改变的一切!」 ▼ PC 平台上爆火的多人物理益智游戏<人类一败涂地>(Human: Fall Flat)移动版正式登陆 iOS 和 Android 平台,游 ...

  3. 美团支付宝互探腹地 相爱相杀再度升级

    文章原创来自洞见网:http://www.localonline.com.cn/view/ec/735.html,转载请注明出处.​ 20年前,网络还未盛行,曾有人做过一场行为艺术"不出门, ...

  4. 无责任猜想#冰桶挑战#大佬们相爱相杀众生相

    看#冰桶挑战#大佬们点名的关系图谱,无意中发现很多有趣的关系啊,下面为八妹子自娱自乐无责任猜想,认真你就输了哦! 1.  微软谷歌苹果Facebook,老大哥.新小弟之间的相互厮杀 FACEBOOK的 ...

  5. Anchor Based和Anchor Free的相爱相杀与ATSS的诞生

    前言 我们都知道按照是否出现RPN可将目标检测算法分为two-stage和one-stage,其中one-stage的一个主要代表便是YOLO系列,而根据是否存在先验锚框的定义我们也可以将其分为Anc ...

  6. 支付宝与微信转战刷脸支付,多年相爱相杀情归何处?

    说起阿里巴巴与腾讯,似乎怎么也绕不开马云跟马化腾. 两马同台,自是不同凡响. 有次,两人同台颁奖. 主持人问马云:"你们都信马,你觉得两人之间最显著的区别是什么?" 马云笑答:&q ...

  7. 30年「相爱相杀」 :30张照片回顾乔布斯和比尔盖茨之间「不得不说」的故事

    Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 来源丨BI 来源公众号丨新智元(ID:AI_era) ...

  8. 30年「相爱相杀」 :30张照片回顾乔布斯和比尔盖茨之间「不得不说」的故事...

    Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 来源丨BI 来源公众号丨新智元(ID:AI_era) ...

  9. 哥本哈根学派创始人:不会踢足球的物理学家不是一个牛逼的教育家,与爱因斯坦相爱相杀...

    要说史上最帅的物理学家是马克斯·普朗克,很多人是反对的,他们表示: 那今天,咱们就来说说这个建立了哥本哈根学派,拿过诺贝尔物理学奖,跟爱因斯坦相爱相杀的物理界男神玻尔! 尼尔斯·玻尔 足球?物理? 1 ...

最新文章

  1. WGCNA分析,简单全面的最新教程
  2. 二极管7种应用电路详解之五
  3. Linux命令之乐--expr
  4. MongoClient类参考文档
  5. 【VBS】一款无聊的 Visual Basic Script 表白程序
  6. 第五节:轻松掌握 vue 实例的生命周期
  7. zabbix邮件脚本报警
  8. vue父子组件搭配(添加数据和删除)
  9. TLS(Thread Local Storage)问题demo
  10. 5.2 tensorflow2实现多元线性回归、完成广告投放销售额预测——python实战
  11. 如何在Eclipse 中查看(如Objects)的源代码
  12. java随机生成姓名
  13. 忘记 Apple ID 密码?重设 Apple ID 密码的 3 种方法
  14. [ERROR NumCPU]: the number of available CPUs 1 is less than the required 2
  15. 如何在手机上做读书笔记?手机做读书笔记的软件
  16. Java学习手册:华为2020届校园招聘——软件题
  17. 实现android 前后摄像头切换效果
  18. 冲突域和广播域交换机模式的基础理解
  19. H5, 遇到的 ios 兼容性问题
  20. 这些8个js技巧可以让你的开发事半功倍

热门文章

  1. “堆外内存泄漏”排查及经验总结
  2. [译]GC专家系列1:理解Java垃圾回收
  3. Linux-文件查找
  4. 针对十类数据从业人员,最好的工具推荐
  5. 【mark】linux 终端命令行下的快捷键(自己已验证所有)
  6. 在Eclipse中编写servlet时出现The import javax.servlet cannot be resolved 问题解决办法
  7. windows下apk查看工具的原理
  8. Nginx反向代理+Go服务实践
  9. ACM-ICPC 2018 徐州赛区网络预赛 Morgana Net
  10. Unity3D_07_日志、文本打印