Discord.js斜杠命令无报错却提示‘应用未响应’问题求助
Discord.js Ping斜杠命令无响应问题排查与修复
问题现象
使用Discord.js开发ping-pong斜杠命令时,执行命令后显示“The application did not respond”,但调试控制台无任何报错信息。
代码错误点及修复方案
1. 权限模块拼写错误 + 权限参数使用不当
ping.js中PersmissionFlagsBits存在拼写错误,正确应为PermissionFlagsBits;同时setDefaultMemberPermissions需传入具体权限值,而非整个权限对象。
错误代码:
.setDefaultMemberPermissions(PersmissionFlagsBits), //que les admins
修复后代码:
.setDefaultMemberPermissions(PermissionFlagsBits.Administrator), //仅管理员可使用
2. 临时回复参数拼写错误
ping.js中ephermal拼写错误,正确应为ephemeral,拼写错误会导致回复无法正常发送,触发应用无响应提示。
错误代码:
interaction.reply({content: 'Pong !', ephermal: true})
修复后代码:
interaction.reply({content: 'Pong !', ephemeral: true})
3. 缺失interactionCreate事件处理
Discord.js需监听interactionCreate事件来处理斜杠命令交互,未实现该事件会导致命令触发后无法执行execute方法。
需在Events文件夹下创建对应事件文件(如Events/Client/interactionCreate.js),代码如下:
module.exports = { name: 'interactionCreate', async execute(interaction, client) { if (!interaction.isChatInputCommand()) return; const command = client.command.get(interaction.commandName); if (!command) return; try { await command.execute(interaction); } catch (error) { console.error(error); await interaction.reply({ content: '执行命令时发生错误!', ephemeral: true }); } }, };
4. 命令加载器文件名拼写错误
main.js中引入的comandHandler拼写错误,正确应为commandHandler,错误会导致命令无法被加载。
错误代码:
const {loadCommands} = require('./Handlers/comandHandler');
修复后代码:
const {loadCommands} = require('./Handlers/commandHandler');
验证步骤
- 修正所有错误后重启Bot
- 重新部署斜杠命令(若使用部署脚本需执行部署操作)
- 再次执行
/ping命令,应正常回复“Pong !”
内容的提问来源于stack exchange,提问作者Blayk
相关产品推荐
相关产品推荐

