Почему не работают слеш-команды и кнопки?



@Pelervin

Вроде все верно, но кнопка даже не появляется при вводе команды /button, да и самой команды нет.
Команда ping появляется, но при изменении слова команды на любое другое новая команда не появляется и не работает

const { Client, IntentsBitField } = require('discord.js');
const { ActionRowBuilder, Events, StringSelectMenuBuilder, ButtonBuilder, ButtonStyle } = require('discord.js');

const client = new Client({
   intents: [
      IntentsBitField.Flags.Guilds,
      IntentsBitField.Flags.GuildMembers,
      IntentsBitField.Flags.GuildMessages,
      IntentsBitField.Flags.MessageContent,
      IntentsBitField.Flags.GuildPresences,
      IntentsBitField.Flags.DirectMessages,
   ],
});

client.on(Events.InteractionCreate, async interaction => {
   if (!interaction.isChatInputCommand()) return;

   if (interaction.commandName === 'button') {
      const row = new ActionRowBuilder()
         .addComponents(
            new ButtonBuilder()
               .setCustomId('primary')
               .setLabel('Нажми')
               .setStyle(ButtonStyle.Primary),
         );

      await interaction.reply({ content: 'Тестовый', components: [row] });
   }

   if (interaction.commandName === 'ping') {
      const row = new ActionRowBuilder()
         .addComponents(
            new StringSelectMenuBuilder()
               .setCustomId('select')
               .setPlaceholder('Выбери тип')
               .addOptions(
                  {
                     label: 'Тип 1',
                     description: 'Основной',
                     value: 'first_option',
                  },
                  {
                     label: 'Тип 2',
                     description: 'Дополнительный',
                     value: 'second_option',
                  },
               ),
         );

      await interaction.reply({ content: 'Смены типа чата', components: [row] });
   }
});


Решения вопроса 0


Ответы на вопрос 0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *