解决 npm ERR! cb() never called!

1. 报错信息

2. 报错代码

kotlin 复制代码
npm ERR! cb() never called!

npm ERR! This is an error with npm itself. Please report this error at:
npm ERR!     <https://npm.community>

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Rattenking\AppData\Roaming\npm-cache\_logs\2024-10-25T01_47_25_855Z-debug.log

3. 问题原因

这个问题,是因为npm程序执行到未知流程节点中然后没有调用回调通知任务已执行完成,导致进程异常退出,据官方说法他们也没有太好的方式解决,建议直接升级npm版本!

4. 解决方案一

  1. 删除: node_modules 文件夹
  2. 删除: package-lock.json 文件
  3. 清楚npm缓存: npm cache clean --force
  4. 再执行: npm install

记录了,说明解决了这个作者当时的问题,但是我是用这种办法,并没有解决,依然报错!

5. 解决方案二

  1. 删除代理
arduino 复制代码
npm config rm proxy
npm config rm https-proxy

可能问题不一样,删除代理再次执行,依然报错,还是没有解决我的问题,苦恼!

6. 解决方案三

  1. 切换镜像
arduino 复制代码
//查看源
npm config get registry
//更换源
npm config set registry https://registry.npmjs.org
//淘宝镜像
npm config set registry https://registry.npmmirror.com 

目前还是没有解决我的问题,崩溃了,快!

7. 解决方案四

  1. 查看 scripts 配置的 npm 的命令,最少我的项目里边没有配置,目前没有发现这个问题,所以还是没解决!
json 复制代码
 "i": "pnpm install"

8. 解决方案五

8.1 解决步骤

  1. 删除: node_modules 文件夹
  2. 删除: package-lock.json 文件
  3. 清楚npm缓存: npm cache clean --force
  4. 更新npm: npm install -g npm@latest
  5. 设置镜像:npm config set registry registry.npmjs.org
  6. 再执行: npm install --legacy-peer-deps

8.2 解释

  1. 第三步和第四步由于使用的是 nvm ,因此我直接安装了另一个较高版本的 node,没有升级 npm;
  2. 最开始我使用的是淘宝镜像,一直有问题,后来换成 npm 的源,就解决了问题;
  3. 最后一步注意安装还是会存在包的依赖冲突,直接使用 --legacy-peer-deps 忽略。

8.3 解决其他问题

  1. 由于最后一步导致包之间存在冲突,因此就只能一个一个的解决;
  2. 我项目中:报错 jsbarcode 包未找到,因此安装了这个包;
  3. 报错: hasInjectionContext 未找到。

8.4 hasInjectionContext 报错

1. 报错代码
arduino 复制代码
No matching export in "node_modules/pinia/node_modules/vue-demi/lib/index.mjs" for import "hasInjectionContext"
2. 报错截图

8.5 解决 pinia 模块的报错

  1. 强制卸载:npm uninstall pinia -f
  2. 忽略冲突安装:npm install pinia@2.0.36 --legacy-peer-deps

8.6 解释

其实后边的报错就是因为第六步忽略包关系安装导致的,如果能够知道创建项目的 node 版本和 npm 版本,最好不要使用这种方法,因为你不能保证每次都有效,这种方法会引起后续很多包冲突需要一个一个的解决。不过还好就是弄了这么久,我的项目解决了,庆祝一下!

9. 运行结果

相关推荐
鱼与宇4 小时前
前端Web(html+css+js+vue3)
前端
雪芽蓝域zzs5 小时前
(六)打包优化 + Nginx 部署完整配置 + 项目收尾
前端·vue.js
研☆香5 小时前
聊一聊前端的常见字 关键字
开发语言·前端·javascript
东风破_6 小时前
JWT 1:从一个登录请求开始,理解 React 项目里的 API 层与 Mock
前端·后端
东风破_6 小时前
JWT 3:为什么 Token 要放进 Authorization?Axios 拦截器到底解决了什么?
前端·后端
东风破_6 小时前
JWT 5:路由守卫是什么?把整个 JWT 登录鉴权流程串起来
前端·后端
东风破_6 小时前
JWT 2:HTTP 是无状态的,为什么登录成功后还要给 Token?
前端·后端
东风破_6 小时前
JWT 4:Zustand 到底解决了什么?为什么登录状态要放进 Store?
前端·后端
IT_陈寒6 小时前
Vite动态导入差点让我秃头,原来问题出在这
前端·人工智能·后端
白泽_hunter7 小时前
项目里最常见的 5 个 this 指向坑:从规则到实战彻底讲透
前端