Discord.js 错误:MessageEmbed字段值不能为空

Discord.js 错误:MessageEmbed字段值不能为空,discord.js,Discord.js,因此,我有一段代码,设计用于在消息更新时向日志通道发送嵌入消息,其中包含新旧消息。但是,每当我测试代码时,都会成功发送嵌入,但会出现错误RangeError[embed\u FIELD\u VALUE]:MessageEmbed FIELD VALUE可能不是空的,并且bot崩溃。我找不到发生此错误的原因,因为所有字段都返回我指定的值 我注意到唯一奇怪的是,当我将代码添加到bot时,所有嵌入都开始遇到相同的错误,但当我注释掉代码时,嵌入恢复正常 有人知道为什么会发生这种错误吗?如果是,我将如何修

因此,我有一段代码,设计用于在消息更新时向日志通道发送嵌入消息,其中包含新旧消息。但是,每当我测试代码时,都会成功发送嵌入,但会出现错误
RangeError[embed\u FIELD\u VALUE]:MessageEmbed FIELD VALUE可能不是空的,并且bot崩溃。我找不到发生此错误的原因,因为所有字段都返回我指定的值

我注意到唯一奇怪的是,当我将代码添加到bot时,所有嵌入都开始遇到相同的错误,但当我注释掉代码时,嵌入恢复正常

有人知道为什么会发生这种错误吗?如果是,我将如何修复它

这是代码:

    var channel = newMessage.guild.channels.cache.find(ch => ch.name === 'bot-log');
    var log = new MessageEmbed()
    .setAuthor(oldMessage.author.tag, oldMessage.author.displayAvatarURL())
    .setDescription(`:pencil: **[Message](${newMessage.url}) by ${newMessage.author} was edited in <#${oldMessage.channel.id}>**`)
    .setColor(0x686afd)
    .addFields(
        { name: `Old message`, value: oldMessage.content},
        { name: `New message`, value: newMessage.content},
    )
    .setTimestamp()
    .setFooter(`Message ID: ${newMessage.id}`);
    return channel.send(log);
});
var channel=newMessage.guild.channels.cache.find(ch=>ch.name=='bot log');
var log=newmessageembed()
.setAuthor(oldMessage.author.tag,oldMessage.author.displayAvatarURL())
.setDescription(`:pencil:*[Message](${newMessage.url})由${newMessage.author}编辑,在**`)
.setColor(0x686afd)
addFields先生(
{名称:`Old message`,值:oldMessage.content},
{名称:`newMessage`,值:newMessage.content},
)
.setTimestamp()文件
.setFooter(`Message ID:${newMessage.ID}`);
返回通道发送(日志);
});

之所以出现这种情况,是因为消息内容可以为空,就像用户附加一些没有文本的文件一样。您可以检查newMessage.content.length和oldMessage.content.length,并将其更改为您想要的内容

比如:

newMessage.content=newMessage.content.length>0?newMessage.content:“空消息”
oldMessage.content=oldMessage.content.length>0?oldMessage.content:“空邮件”

我认为这个代码是正确的:v

    var channel = message.channel;
    var log = new MessageEmbed()
    .setAuthor(message.author.tag, message.author.displayAvatarURL())
    .setDescription(`:pencil: **[Message](${message.url}) by ${message.author.tag} was edited in <#${message.channel.id}>**`)
    .setColor(0x686afd)
    .addFields(
        { name: `Old message`, value: message.content},
        { name: `New message`, value: message.content},
    )
    .setTimestamp()
    .setFooter(`Message ID: ${message.id}`);
    return channel.send(log);
var channel=message.channel;
var log=newmessageembed()
.setAuthor(message.author.tag,message.author.displayAvatarURL())
.setDescription(`:pencil:*[Message](${Message.url})由${Message.author.tag}编辑,在**`)
.setColor(0x686afd)
addFields先生(
{名称:`Old message`,值:message.content},
{名称:`newmessage`,值:message.content},
)
.setTimestamp()文件
.setFooter(`Message ID:${Message.ID}`);
返回通道发送(日志);

如有必要,我可以提供完整的错误信息