diff --git a/src/components/titlebar-element.vue b/src/components/titlebar-element.vue index b72a313..3119856 100644 --- a/src/components/titlebar-element.vue +++ b/src/components/titlebar-element.vue @@ -2,14 +2,14 @@ import { MenuIcon } from "lucide-vue-next"; import { computed } from "vue"; import { useRoute, useRouter, RouterLink } from "vue-router"; -import { lastRoute } from "../router/index"; +import { lastDataRoute } from "../router/index"; const route = useRoute(); const router = useRouter(); const routeName = computed(() => route.name); function goBack() { - if (routeName.value != "title.settings") return; - if (lastRoute.value.name) router.go(-1); + if (!routeName.value.startsWith("title.settings")) return; + if (lastDataRoute.value.name) router.push(lastDataRoute.value.path); else router.push("/timetable"); } diff --git a/src/router/index.js b/src/router/index.js index 3c3776f..9d26974 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -57,9 +57,11 @@ const router = createRouter({ ], }); -export let lastRoute = ref(); +export let lastDataRoute = ref(); router.beforeEach((_to, from) => { - lastRoute.value = from; + if (from.meta.dataView) { + lastDataRoute.value = from; + } return true; });