我试图创建一个带有特定选项的菜单,但当我试图选择其中一个选项时,它说交互失败。这是我第一次在discord上使用菜单,我试图按照文档操作,但我似乎找不到我做错了什么。
const mvpCollector = interaction.channel.createMessageComponentCollector({
componentType: 'SELECT_MENU',
time: 30000,
});
mvpCollector.on('collect', async (menuInteraction) => {
const mvp = menuInteraction.values[0];
if (!team1.has(mvp) && !team2.has(mvp)) {
interaction.followUp({content: `${mvp} wasn't in the game!`});
} else {
mapBanendEmbed.addFields({name: 'MVP', value: `${mvp}`});
interaction.followUp({
embeds: [mapBanendEmbed],
components: []
});
}
});
mvpCollector.on('end', async (collected) => {
if (collected.size === 0) {
interaction.followUp({content: 'No MVP was selected.'});
}
});
当从选择菜单中选择一个用户作为MVP时,它应该编辑一个嵌入并将该用户设置为字段中的MVP,但它只是给我一个交互失败错误。
1条答案
按热度按时间q43xntqr1#
组件类型在v14中已更改。请在创建收集器时使用此选项:
此外,如果您试图编辑原始消息,我认为您会希望使用
.update()
而不是.followUp()
。