解决 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. 运行结果

相关推荐
Anlici43 分钟前
连载小说大学生课设 需求&架构
前端·javascript·后端
2501_938769991 小时前
React Server Components 进阶:数据预取与缓存
前端·react.js·缓存
蒜香拿铁2 小时前
Angular【基础语法】
前端·javascript·angular.js
xiaoxiao无脸男2 小时前
纯css:一个好玩的按钮边框动态动画
前端·css·css3
rookie_fly3 小时前
基于Vue的数字输入框指令
前端·vue.js·设计模式
元直数字电路验证3 小时前
ASP.NET Core Web APP(MVC)开发中无法全局配置 NuGet 包,该怎么解?
前端·javascript·ui·docker·asp.net·.net
rexling14 小时前
【Spring Boot】Spring Boot解决循环依赖
java·前端·spring boot
我有一棵树4 小时前
Vue 项目中全局样式的正确写法:不要把字体和主题写在 #app 上
前端·javascript·vue.js
Luna-player4 小时前
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本,解决方法
前端·npm·node.js
悢七4 小时前
windows npm打包无问题,但linux npm打包后部分样式缺失
linux·前端·npm