运行Discord Bot时报错Cannot find module 'timers/promises'如何解决
问题原因
timers/promises 是Node.js v15.0.0及更高版本才内置的核心模块,该报错是你当前运行环境的Node.js版本过低导致的,报错里的引入来源是依赖包@discordjs/rest,和你自己写的业务代码无关。手动下载第三方同名包无法生效,因为第三方包和Node内置模块的导入逻辑不兼容。
解决方法
- 执行以下命令查看当前Node.js版本:
node -v - 若返回的版本号低于15.0.0,将Node.js升级到v18或v20的LTS长期支持版本,这两个版本也是discord.js官方明确支持的运行环境
- 升级完成后,删除项目根目录下的
node_modules文件夹、package-lock.json文件(若使用yarn则删除yarn.lock,使用pnpm则删除pnpm-lock.yaml) - 重新安装项目依赖:
npm install - 重新启动Bot即可正常运行
内容的提问来源于stack exchange,提问作者DanielSograim
相关产品推荐
相关产品推荐

