在使用 discord.js
删除嵌入消息之前设置延迟,可以通过 JavaScript 的 setTimeout
函数来实现。以下是一个简单的示例代码,展示了如何在发送嵌入消息后等待一段时间再将其删除:
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', (message) => {
if (message.content === '!sendembed') {
// 创建一个嵌入消息
const embed = new Discord.MessageEmbed()
.setTitle('这是一个嵌入消息')
.setDescription('这个消息将在5秒后被删除。');
// 发送嵌入消息
message.channel.send(embed).then((sentEmbed) => {
// 设置延迟删除
setTimeout(() => {
sentEmbed.delete().catch(console.error);
}, 5000); // 延迟5000毫秒(即5秒)
});
}
});
client.login('YOUR_BOT_TOKEN');
setTimeout
,你可以精确控制消息的删除时间。Manage Messages
权限。sentEmbed.delete()
失败。可以使用 .catch()
捕获并处理这些错误。sentEmbed.delete().catch((error) => {
console.error('删除消息时出错:', error);
});
希望这些信息对你有所帮助!如果有更多问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云