【发布时间】:2021-02-23 17:47:20
【问题描述】:
我正在开发一个小型私人 Discord 机器人(主要用于学习)
我一直在开发一个功能,其中机器人发送消息,用户发送响应,机器人将删除初始嵌入并跟进另一个嵌入。
(创建嵌入消息链来收集用户输入并从中构建最终结果)
到目前为止,这就是我的代码所包含的内容
const wait = 30000;
let count;
const embed = new Discord.MessageEmbed()
.setColor('#9EFF9A')
.setTitle('Question?')
.setDescription('');
message.channel.send(embed);
message.channel.awaitMessages(m => m.author.id == message.author.id,
{ max: 1, time: `${wait}` }).then(collected => {
message.delete(embed);
count = collected.first().content;
console.log(count);
}).catch(() => {
message.delete(embed);
return message.reply('No reply after ' + `${wait / 1000}` + ' seconds, operation canceled.').then(m => {
m.delete({ timeout: 15000 });
});
});
我尝试了message.delete(); 的各种迭代,但没有任何有用的结果,机器人通常最终会删除用户发送的命令消息以启动嵌入链。
我从一个朋友那里得到了一个建议,我最后也在网上看到了几次,内容如下:
.then(() => {
message.delete()
})
我想不出任何方法来将它实现到我当前的代码中。
我有什么误解吗?我对 DiscordJS 和 Javascript 很陌生,我的朋友确实提到 .then() 语句可能会变得非常棘手
我很感激能得到任何帮助!
【问题讨论】:
标签: javascript discord.js