Node.js 如何使Discord.js bot获取频道上的最后一个附件
我正试图让我的Discord bot发送频道上的最后一个附件,但发送时遇到问题。Node.js 如何使Discord.js bot获取频道上的最后一个附件,node.js,discord,discord.js,Node.js,Discord,Discord.js,我正试图让我的Discord bot发送频道上的最后一个附件,但发送时遇到问题。 当我使用“m.attachments.first().url”时,它表示“未处理的承诺拒绝”,当我使用“m.attachments.first()”时,它表示“无法发送空消息” 编辑:我尝试了很多不同的方法,但唯一给我一些结果的是这个(结果是“未定义的”): 你和你的第二段代码非常接近!您只需在附件之后添加另一个.first() message.channel.messages.fetch().then(m
当我使用“m.attachments.first().url”时,它表示“未处理的承诺拒绝”,当我使用“m.attachments.first()”时,它表示“无法发送空消息” 编辑:我尝试了很多不同的方法,但唯一给我一些结果的是这个(结果是“未定义的”):
你和你的第二段代码非常接近!您只需在
附件之后添加另一个.first()
message.channel.messages.fetch().then(messages => {
const att = messages.filter(m => m.attachments.size > 0);
message.channel.send(att.first().attachments.first().url);
});
在发送消息之前,您可能还需要确保att
确实有一个值,否则会出现错误
if (message.content.toLowerCase() === 'test'){
message.channel.messages.fetch().then(messages => {
const att = messages.filter(m => m.attachments.size > 0);
message.channel.send(`${att.first().attachments.url}`)
})}
message.channel.messages.fetch().then(messages => {
const att = messages.filter(m => m.attachments.size > 0);
message.channel.send(att.first().attachments.first().url);
});