diff --git a/src/App.vue b/src/App.vue index 29029cc..7d194a2 100644 --- a/src/App.vue +++ b/src/App.vue @@ -4,10 +4,12 @@ import { useSpaceStore } from "@/stores/spaceStore"; import { computed, onMounted, onBeforeUnmount, ref } from "vue"; import Toolbar from "@/components/Toolbar.vue"; import { useToolbarStore } from "@/stores/toolbar-store"; -import router from "@/router"; // если у тебя index.ts экспортирует по умолчанию, можно без /index.js +import router from "@/router"; +import {useRoute} from "vue-router"; // если у тебя index.ts экспортирует по умолчанию, можно без /index.js const spaceStore = useSpaceStore(); const toolbarStore = useToolbarStore(); +const route = useRoute(); // true/false, есть ли Telegram WebApp const isTelegram = computed(() => !!(window as any)?.Telegram?.WebApp); @@ -40,6 +42,20 @@ onMounted(() => { tgApp.expand?.(); // более мягкий вариант, чем requestFullscreen() tgApp.requestFullscreen?.(); tgApp.lockOrientation?.(); + if (route.path != '/') { + tgApp.BackButton.show() + // при нажатии — возвращаемся назад + const handleBack = () => { + // например, переход на предыдущий маршрут + if (window.history.length > 1) { + router.back(); + } else { + tg.BackButton.hide(); + } + }; + + tg.BackButton.onClick(handleBack); + } } catch { /* ignore */ }