报错Cannot find module './commandsping.js' Discord机器人加载ping.js失败如何解决
问题修复方案
路径拼接错误
你代码中加载命令的路径写法require(./commands${file})存在问题,commands和文件名之间没有补充路径分隔符/,当读取到的文件名是ping.js时,最终拼接出的导入路径就是报错信息里的./commandsping.js,自然找不到对应文件。
修复方法:将该行代码修改为const command = require(./commands/${file});命令集合被重复初始化覆盖
你在完成手动命令加载操作后,紧接着执行了client.commands = new Collection();,这行代码会清空你之前已经加载并存入client.commands的所有命令内容,即便路径问题修复后也会触发找不到命令的问题。
如果后续你写的handlers/command已经包含命令加载逻辑,直接删除最开始手动加载命令的整段代码即可;如果不需要走handler加载,删除重复初始化client.commands的代码即可。
内容的提问来源于stack exchange,提问作者ignshifts
相关产品推荐
相关产品推荐

