NodeJS bot.sendMessage中的按钮和粗体文本

m4pnthwp  于 2022-11-29  发布在  Node.js
关注(0)|答案(1)|浏览(123)

请帮助我了解问题所在。为什么按钮(menuOptions)不显示?

if (text === '/start') {
                ust[chatId] = 0;
                bot.sendMessage(chatId, `${msg.from.first_name}, <b>Добро пожаловать</b> ✌️\n\nДоступные возможности:`, {
                    parse_mode: "HTML",
                    menuOptions
                })
            }

代码茶杯选项:

module.exports = {
    menuOptions: {
        reply_markup: JSON.stringify({
            inline_keyboard: [
                [{text: 'Списки', callback_data: '/list'}],
                [{text: 'Частые вопросы', callback_data: '/quests'}, {text: 'Распространенные проблемы', callback_data: '/problems'}]
            ]
        })
    }

NodeJS 上的节点电报bot API
我尝试了很多方法,重新制作了menuOptions结构,只要我没有插入它.

rpppsulh

rpppsulh1#

您的代码在sendMessage方法的options参数中指定了menuOptions键值对,您需要做的就是直接使用reply_markup键。

const { menuOptions } = require('./path/to/menu_options');

if (text === '/start') {
    ust[chatId] = 0;
    bot.sendMessage(chatId, `${msg.from.first_name}, <b>Добро пожаловать</b> ✌️\n\nДоступные возможности:`, {
        parse_mode: "HTML",
        reply_markup: menuOptions.reply_markup
    })
}

如果你想在menuOptions对象中使用reply_markup以外的其他属性,javascript spread operator可能会有所帮助:

{
    parse_mode: 'HTML',
    ...menuOptions
}

相关问题