修复npm ERR! cb()never called!的错误

背景:在原项目上新安装一个依赖,结果报错了,我就直接把整个node_module移除了,重新安装,npm install的时候,开始出坑~!!

快速移除node_module的方法
npm install rimraf -g  (如果已经安装过就忽略这一步)
rimraf node_modules

!!!出现问题

一:初始错

在运行npm install时报如下错误:

解决方式: 

1. 以管理员模式打开cmd清除你的npm缓存 (mac电脑在npm前加sudo):

npm cache clean -f

2.清除完缓存后,安装最新版本的Node helper:

npm install -g n

二:第二个错

注意:如果出现npm ERR! notsup Unsupported platform for n@2.1.8: wanted {"os":"!win32","arch":"any"} (current: {"os":"win32","arch":"x64"})

3.执行以下 -安装npm包管理助手

 npm install -g n --force

 4.安装最新的稳定版Node:

n stable

三.第三个错

5. 注意,如果报错

 去 https://github.com/Kenshin/gnvm 

6.然后打开cmd命令行窗口,输入:放的位置对的话,就可以直接执行该命令,如果不对,会报错 gnvm 不是内部也不是外部命令
gnvm update latest

 如果仍然不可以(npm install安装仍然报错,这个时候,可能就是因为node的版本和已有的项目中安装依赖时的版本不一致了,那么就需要走7),

7.建议 卸载node,重新安装一次,(注意:可以直接使用以前的node包,也可以重新下载,但是尽量下载相同版本的,如果版本下载的不同,会对之前的项目有影响,如下)

报错:Unexpected end of JSON input while parsing near

 8.这时候需要再次打开命令窗口

npm cache clean --force

9.然后执行

npm install

终于成功了,

把npm 的坑是踩了个遍,心酸

上面成功之后,在进行npm install就可以了

附带一个淘宝镜像 :

npm install -g cnpm --registry=https://registry.npm.taobao.org 
原文地址:https://www.cnblogs.com/fyjz/p/13231005.html