discord.js开发Discord Bot遇message废弃、空消息报错如何解决
问题修复方案
1. 弃用警告处理
discord.js v13及以上版本已弃用message事件,修改你主入口文件的事件监听代码:
将原有监听逻辑
client.on('message', msg => { /* 原有逻辑 */ })
替换为
client.on('messageCreate', msg => { /* 原有逻辑 */ })
2. 空消息报错处理
该报错是因为discord.js v13+ 调整了消息发送的参数格式,不支持直接传递Embed实例作为send方法的入参,必须显式放入embeds数组中。
修改你代码中的发送逻辑:
原有代码
message.channel.send(newEmbed);
替换为
message.channel.send({ embeds: [newEmbed] });
可选优化
你当前代码中用于插入空白字段的u200B缺少转义符,会直接渲染为普通文本,建议修改为转义后的零宽空格:
{ name: '\u200B', value: '\u200B' },
内容的提问来源于stack exchange,提问作者Mohi
相关产品推荐
相关产品推荐

