所以我使用此代码获得了交互嵌入:
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: []}}]
预先感谢您的帮助。
所以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.