loadingGuard.ts
443 Bytes
import { Router } from "vue-router";
export const createLoadingGuard = (router: Router) => {
router.beforeEach(async (to, from, next) => {
const Loading = window['$loading'];
Loading && Loading.start();
next()
})
router.afterEach((to, _, failure) => {
const Loading = window['$loading'];
document.title = (to?.meta?.title as string) || document.title;
Loading && Loading.finish();
})
}