Javascript Discord.js正在复制另一个bot的嵌入
我想复制另一个机器人的嵌入和重新发送,而只是将图像更改为缩略图。我已经能够用缩略图替换图像,获得作者姓名和页脚,以及描述字段。但我不知道如何获取字段和值。我试图复制的消息中有很多字段和值。我需要知道到底有多少吗?以下是我到目前为止的情况:Javascript Discord.js正在复制另一个bot的嵌入,javascript,node.js,bots,discord,discord.js,Javascript,Node.js,Bots,Discord,Discord.js,我想复制另一个机器人的嵌入和重新发送,而只是将图像更改为缩略图。我已经能够用缩略图替换图像,获得作者姓名和页脚,以及描述字段。但我不知道如何获取字段和值。我试图复制的消息中有很多字段和值。我需要知道到底有多少吗?以下是我到目前为止的情况: let url = e.image.url; let desc = e.description; let avatar = e.author.name; //let
let url = e.image.url;
let desc = e.description;
let avatar = e.author.name;
//let avaimg = e.icon.url;
let field = e.fields.value;
let field2 = e.fields.name;
let foot = e.footer.text;
然后
这是可行的,但是字段只是说未定义。所以我需要一种方法来获取所有字段,并让它准确地重新发布它所说的内容。我也不知道如何获得作者图标
我希望我的问题有意义,如果这是一个noob问题,我很抱歉,我对js不是很有经验。是一个数组,所以你应该循环遍历每个元素并逐个添加它们:你可以使用for循环或使用该方法。
下面是一个例子:
//假设我们有一个收据和你的收据
receivedEmbed.fields.forEach{name,value,inline}=>{
yourEmbed.addFieldname,值,true
}
现在发生的事情是,您正在遍历每一个,获取名称、值和内联属性,即使您决定不使用最后一个,因为您知道它存在,并将这些相同的字段添加到您自己的embed中。
另一种方法是使用for循环:
对于receivedEmbed.fields的let字段{
yourEmbed.addFieldfield.name、field.value、field.inline
}
如果你在使用discord。js@v12,您也可以使用以下方法:
yourEmbed.addFieldsreceivedEmbed.fields
也许可以尝试将描述、页脚和字段作为字符串?
embed
.setDescription(desc)
.setThumbnail(url)
.setFooter(foot)
.addField(field2, field, true)
.setAuthor(avatar)
return message.channel.send(embed)