You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Telegraf 4.1.1开发Telegram Bot时出现找不到typegram/callback模块的问题求助

解决Telegraf 4.1.1中"Cannot find module 'typegram/callback'"的报错问题

看起来你遇到的是典型的依赖版本不兼容或者本地依赖缓存损坏问题——毕竟回滚到最简代码还报错,说明根本不是代码的锅,是你的node_modules环境出问题了。给你几个靠谱的解决步骤:

第一步:彻底清理本地依赖环境

先把可能损坏的依赖文件和缓存清干净:

  • 删除整个node_modules文件夹:
    Windows命令:rmdir /s /q node_modules
    Mac/Linux命令:rm -rf node_modules
  • 删除package-lock.json文件(如果用yarn就是yarn.lock):rm package-lock.json
  • 强制清理npm缓存:npm cache clean --force

第二步:重新安装匹配版本的依赖

Telegraf 4.1.1对typegram有特定的版本要求,你现在装的typegram版本可能和它不兼容(比如新版本的typegram调整了文件路径,导致Telegraf找不到typegram/callback)。

  • 先安装Telegraf 4.1.1明确依赖的typegram版本:它要求的typegram版本是^3.7.0,直接执行:npm install typegram@3.7.0
  • 然后重新安装所有依赖:npm install

第三步:检查依赖版本冲突

如果上面的步骤还不行,看看是不是有其他依赖偷偷引入了不同版本的typegram:

  • 执行npm ls typegram查看你的项目里typegram的版本树,如果发现有多个版本,说明有依赖冲突。
  • 可以在package.json里添加resolutions字段(如果用npm,需要先安装npm-force-resolutions)来强制统一typegram版本:
"resolutions": {
  "typegram": "3.7.0"
}

然后重新执行npm install。

为什么回滚代码没用?

因为这个错误是来自node_modules里的Telegraf依赖文件,不是你自己的代码。哪怕你把自己的代码删到只剩一行require,Node.js还是会加载Telegraf的内部代码,而它找不到需要的typegram模块,所以报错依然存在。

内容的提问来源于stack exchange,提问作者coding_potato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 08:57:41