如何通过ID获取消息,然后对其作出反应



我正在尝试获取像这样的新创建消息的消息ID。我将使用什么代替message.channel.fetch(id)来获取消息id?我好像找不到它了:

async function messageSend() {
let messageId = await message.channel.send('Test');
let { id } = messageId;
const emojiCheck = '✅';
const emojiNo = '❌';
const nebzlaID = '569860318608490496';
message.channel.messages.fetch(id).react(emojiCheck);
message.channel.messages.fetch(id).react(emojiNo);
const suggestionDM = new Discord.MessageEmbed()
.setColor('#fffff')
.setTitle('There is a new suggestion in abc!').setDescription(`
User: ${suggestUser}
nnSuggestion: ${suggestion}
`);
// ...

channel.messages.fetch()返回一个承诺,这意味着您需要先解析它以获得您可以响应的消息。您可以使用await:

async function messageSend() {
const { id } = await message.channel.send('Test');
const emojiCheck = '✅';
const emojiNo = '❌';
const nebzlaID = '569860318608490496';
const messageToReact = await message.channel.messages.fetch(id);
messageToReact.react(emojiCheck);
messageToReact.react(emojiNo);
// ...

虽然不需要再次获取它,但您可以简单地对返回的消息作出反应:

async function messageSend() {
const sentMessage = await message.channel.send('Test');
const emojiCheck = '✅';
const emojiNo = '❌';
const nebzlaID = '569860318608490496';
sendMessage.react(emojiCheck);
sendMessage.react(emojiNo);
// ...

相关内容

最新更新