🐛 Fix circular import in router
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
import { MenuIcon } from "lucide-vue-next";
|
||||
import { computed } from "vue";
|
||||
import { useRoute, useRouter, RouterLink } from "vue-router";
|
||||
import { lastRoute } from "../store";
|
||||
import { lastRoute } from "../router/index";
|
||||
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
|
@ -1,5 +1,6 @@
|
||||
import { createRouter, createWebHistory } from "vue-router";
|
||||
import { lastRoute } from "../store";
|
||||
import { shouldLogin } from "../store";
|
||||
import { ref, watch } from "vue";
|
||||
import TimetableView from "../views/TimetableView.vue";
|
||||
import SubstitutionView from "../views/SubstitutionView.vue";
|
||||
import HistoryView from "../views/HistoryView.vue";
|
||||
@ -47,9 +48,14 @@ const router = createRouter({
|
||||
],
|
||||
});
|
||||
|
||||
export let lastRoute = ref();
|
||||
router.beforeEach((_to, from) => {
|
||||
lastRoute.value = from;
|
||||
return true;
|
||||
});
|
||||
|
||||
watch(shouldLogin, (value) => {
|
||||
if (value) router.push("/login");
|
||||
});
|
||||
|
||||
export default router;
|
||||
|
@ -1,10 +1,9 @@
|
||||
import { ref, watch, computed } from "vue";
|
||||
import router from "./router";
|
||||
import { getNextAndPrevDay } from "./util";
|
||||
import i18n from "./i18n";
|
||||
|
||||
/* Router */
|
||||
export const lastRoute = ref();
|
||||
export const shouldLogin = ref(false);
|
||||
export const loading = ref(false);
|
||||
export const loadingProgress = ref(0);
|
||||
export const loadingFailed = ref(false);
|
||||
@ -70,7 +69,7 @@ export async function fetchData(days, partial) {
|
||||
try {
|
||||
const checkResponse = await fetch(`${baseUrl}/check`);
|
||||
if (checkResponse.status == 401) {
|
||||
router.push("/login");
|
||||
shouldLogin.value = true;
|
||||
return;
|
||||
} else if (checkResponse.status != 200) {
|
||||
loadingFailed.value = true;
|
||||
|
Reference in New Issue
Block a user