【问题标题】:Copy embed and modify between chats discordjs在聊天 discordjs 之间复制嵌入和修改
【发布时间】:2021-12-24 05:55:39
【问题描述】:

我正在尝试更改有关嵌入消息的一些信息,然后从频道传输消息,但是当我尝试传输消息时,出现此错误:

RangeError [EMBED_FIELD_NAME]: MessageEmbed field names must be non-empty strings.

我正在尝试这样:

let title;
let fieldName;
let fieldValue;

if(message.channel.id == analiseChannelID && reaction.emoji.name === 'aprovada') {
  message.embeds.forEach(embeds => {
    let title = embeds.title;
    //console.log(embeds.title); // logging to console ✅
    let fields = embeds.fields;
    fields.forEach((field) => {
      //console.log(field.name); // logging to console ✅
      //console.log(field.value); // logging to console ✅
      fieldName = field.name;
      fieldValue = field.value;
    });
    let embed1 = new Discord.MessageEmbed().addFields(fieldName, fieldValue)
    ChannelAprovada.send(embed1)
  })
}

【问题讨论】:

    标签: javascript node.js discord.js bots


    【解决方案1】:

    您使用了需要对象作为参数的MessageEmbed#addFields 方法(带有s)。将其更改为 MessageEmbed#addField 应该可以工作

    let embed1 = new Discord.MessageEmbed()
                    .addField(fieldName, fieldValue) //no "s"
    

    【讨论】:

    • 它说消息是空的
    • 您使用的是什么版本的 discord.js?
    • 我使用的是 v16.11.0
    • @Maker__ 这是你的 node.js 版本,而不是 discord.js
    • 我在哪里可以找到那个?
    【解决方案2】:

    正如@MrMythical 所说,将MessageEmbed#addFields 更改为MessageEmbed#addField 应该会对您有所帮助,但请尝试使用.addField(fieldName, `** ** ${fieldValue}`) 而不是.addField(fieldName, fieldValue)!使用** ** 应该可以帮助您防止出现错误,即使您的fieldValue 出于某种原因为空!

    此外,在 discord.js v13 中,您必须使用 ChannelAprovada.send({embeds: [embed1]}) 而不是 ChannelAprovada.send(embed1) 来发送嵌入!

    【讨论】:

      【解决方案3】:

      再试一次。

      .addFields({ name: `text`, value: `text`})
      

      对于不和谐 v.13

      .addField("text", "text")
      

      【讨论】:

      • .addFields 用于 Discord v.12,但在 v.13 中用于多个字段,所以我同意。
      • 哦,这就是重点,我必须从旧消息嵌入中打印多个字段,例如:名称;姓;年龄 ||但这样甚至没有打印,并说字段是空的
      • @Maker__ 你找到你的 discord.js 版本了吗?
      • 如果您使用的是 discord v.12,它可能会对您有所帮助,但如果您使用的是 discord v.13,那就另当别论了
      • 我使用的是 13.2.0
      猜你喜欢
      • 2021-12-16
      • 2019-04-02
      • 2021-12-12
      • 2018-09-18
      • 1970-01-01
      • 1970-01-01
      • 2012-05-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多