@Lynatik001

Как сделать кнопки на всю ширину(Telegraf)?

Собственно вопрос в заголовке
Вот реализация вывода менюшки.
Ширина кнопок ctx.reply('hi', Botmenu); по умолчанию - соотносится к тексту перед кнопками - т.е - hi
В данном случае выходит у меня кнопки на 30% ширины от полной ширины екрана(чата?) - кста соре за тафтологию.
у меня меню не одно же в боте будет. и разница полной ширины в разных менюшках смотрятся стремно

А еще бы хотелось узнать как вобще без текста - я про "hi" , что бы только менюшку мог в ответ выводить
controlPanel(Botmenu) {
    const controlPanelScene = new Scene('controlPanel');
    controlPanelScene.enter(async (ctx) => {
      await ctx.reply('hi', Botmenu);
    });
    return controlPanelScene;
  }


const Botmenu = frontMenu(...[[
  {
    name: '❌',
    callback: 'delCurrBot',
  }],
[{
  name: 'input 2',
  callback: 'botName',
}], [{
  name: 'input 3',
  callback: 'moduls',
}]]);


const frontMenu = (...arrayOfLabel) => Telegraf.Extra.markdown().markup((m) => m.inlineKeyboard(
  arrayOfLabel.map((a) => a.map((b) => m.callbackButton(b.name, b.callback))),
));
  • Вопрос задан
  • 897 просмотров
Пригласить эксперта
Ответы на вопрос 2
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
Что-то накручено у вас в коде. Но, по моему, вам не нужно использовать spread оператор при создании Botmenu.
Там должен быть двумерный массив: массив строк, и внутри каждой строки массив кнопок.

https://github.com/telegraf/telegraf/blob/develop/...
Ответ написан
@Lynatik001 Автор вопроса
решение так и не нашел. ширина кнокпок. после того как адаптируется под свой контекст(текст в кнопке) - делает соотношение с размером текста с верху.
Как или запустить клавиатуру без текста сверху, или сделать на всю ширину и кнопку и текст - выходит(забить пробелами как по мне это не решение если вобще сработает)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы