【发布时间】:2021-12-08 16:32:02
【问题描述】:
我正在尝试为我的 Discord 服务器创建一个菜单,并且我已经让 slash 命令正常工作,但是当我去拉菜单时,我得到:主菜单作为执行 slash 命令时不和谐的返回。
我使用以下代码来达到我所拥有的:
//Remember to run " node deploy-commands.js " to register your commands!
const { SlashCommandBuilder } = require('@discordjs/builders');
const { MessageActionRow, MessageButton } = require('discord.js');
module.exports = {
data: new SlashCommandBuilder()
.setName('menu')
.setDescription('Brings up the Main Menu'),
async execute(interaction, client) {
const row = new MessageActionRow()
.addComponents(
new MessageButton()
.setCustomId('dice-bag')
.setLabel('danger')
.setStyle("DANGER"),
new MessageButton()
.setCustomId('spells')
.setLabel('primary')
.setStyle("PRIMARY"),
new MessageButton()
.setCustomId('inventory')
.setLabel('Success')
.setStyle("SUCCESS"),
);
await interaction.reply({content: 'Main menu,', components: [row]})
},
};
我觉得我需要以某种方式嵌入消息,但我不是 100% 确定如何。我很确定我可能需要添加以下内容:
await interaction.reply({content: 'Main menu,', components: [row]})
我很确定 components: [row]}) 是错误的,但我不知道应该用什么代替它。每当我尝试修复它时,我都会收到有关 MessageActionRow 操作行需要 NEW 的错误。
感谢您的帮助!
【问题讨论】:
-
compents错了,显然是“组件”的拼写错误。您能否编辑您的问题以包含您尝试过的代码,这些代码让您收到有关MessageActionRow“需要新”的错误?这很可能比您问题中的当前代码更接近正确答案。 -
这只是我愚蠢的手指打字太快的情况,一旦我做了那个呼叫更改,它就像一个魅力。谢谢@Cannicide
标签: javascript button menu discord.js bots