从discord js中的嵌入数组中获取项目

问题描述 投票:0回答:1

所以我使用此代码获得了交互嵌入:

client.on('interactionCreate', async (interaction) => {
    if (!interaction.isButton()) return;
    const raidembed = interaction.message.embeds
    console.log(raidembed)

这就是它返回的内容:

[
  Embed {
    data: {
      type: 'rich',
      title: 'RAID DU : A :',
      image: [Object],
      footer: [Object],
      fields: [Array],
      description: '# Caveau des Incarnations\n### <:skull:1193157255407882340> Normal (:)',
      color: 9124820
    }
  }
]

我需要编辑嵌入的字段,我目前正在使用

embed.spliceFields()
方法。 如何获取嵌入数组的字段数组? 我尝试了
console.log(raidembed.fields)
console.log(raidembed.data.fields
但它们都返回“未定义”。

在我看来,它就像一个对象内的数组、另一个对象内的数组和另一个数组内的数组:

[object { object: { array: []}}]

预先感谢您的帮助。

javascript discord.js
1个回答
0
投票

所以interaction.message.embeds返回一个数组。在访问对象之前,您需要首先从数组访问相应的嵌入。

let raidEmbed = interaction.message.embeds;

//It seems that in your case you're only getting one embed so access it like this:

let raidData = raidEmbed[0].data;

//Now do what you want with the data.
© www.soinside.com 2019 - 2024. All rights reserved.