telegramBot之取消按钮的监听

2024-08-07 18:40:35 浏览数 (2)

最近发现我们用telegram bot打开一个web App的时候,容易误点到屏幕左上角的取消按钮,希望这个时候能够弹出一个2次确认弹窗。

(adsbygoogle = window.adsbygoogle || []).push({});

想法与踩坑

刚开我以为是在bot机器人代码中实现这个功能,如果各种网上找,不断的问chatGPT,但是chatGPT给出的一些代码都没有解决这个问题。最后还是在TON心粉群聊里一个大佬指出在开发文档的SDK中有说明。如是自己跑去看了下SDK的源代码,发现确实有。 SDK源代码链接SDK源代码链接 感悟: 还是要多看看开发文档和API

实现

看了之后发现这个并不是在bot机器人中设定的,而是在你的h5代码中设定,之前就完全走错了方向。 比较简单,设置isClosingConfirmationEnabled参数值为true即可。

步骤: 1、在你html代码的<head>中加入tg的引用<script src="https://telegram.org/js/telegram-web-app.js"></script> 2、这时你在<script>中就可以使用window.Telegram.WebApp了,在<script>中添加下面代码:

代码语言:javascript复制
const tg = window.Telegram.WebApp;
tg.isClosingConfirmationEnabled = true;

这样就ok啦,打开机器人,加载webapp,点击取消按钮,这个时候就可以看到屏幕底部弹出了一个2次弹窗,如下图: `示例图

0 人点赞