You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Telegraf Bot:是否可在单个action中追踪多个操作?

在Telegraf Bot的单个bot.action方法中追踪多个操作?

当然可以,Telegraf支持在单个bot.action方法中绑定多个操作,主要有两种实现方式:

  • 传入标识符数组:把需要追踪的多个操作标识符放进数组,作为第一个参数传给bot.action,数组里的任意操作被触发时,都会执行对应的回调逻辑。示例代码:
// 定义多个操作标识符
const LIKE_ACTION = 'like_post';
const SHARE_ACTION = 'share_post';
const SAVE_ACTION = 'save_post';

// 绑定多个操作到同一个回调
bot.action([LIKE_ACTION, SHARE_ACTION, SAVE_ACTION], (ctx) => {
    ctx.reply(`你触发了操作:${ctx.callbackQuery.data}`);
});
  • 使用正则表达式匹配:如果操作标识符有统一命名规则(比如前缀一致),可以用正则表达式批量匹配符合规则的操作,适合覆盖一类操作的场景。示例代码:
// 匹配所有以"post_"开头的操作
bot.action(/^post_/, (ctx) => {
    ctx.reply(`触发了匹配的操作:${ctx.callbackQuery.data}`);
});

这两种方式都能让单个bot.action处理多个操作回调,你可以根据实际需求选择合适的方法。

内容的提问来源于stack exchange,提问作者user3336191

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 09:57:03