Blame view

src/router/guard/progressGuard.ts 591 Bytes
陈文彬 authored
1
2
import type { Router } from 'vue-router';
vben authored
3
4
import { useTransitionSetting } from '/@/hooks/setting/useTransitionSetting';
5
6
import nProgress from 'nprogress';
vben authored
7
8
import { unref } from 'vue';
陈文彬 authored
9
export function createProgressGuard(router: Router) {
Vben authored
10
  const { getOpenNProgress } = useTransitionSetting();
11
  router.beforeEach(async (to) => {
vben authored
12
    if (to.meta.loaded) return true;
13
    unref(getOpenNProgress) && nProgress.start();
陈文彬 authored
14
15
    return true;
  });
vben authored
16
17
18
  router.afterEach(async () => {
    // if (to.meta.loaded) return true;
19
    unref(getOpenNProgress) && nProgress.done();
陈文彬 authored
20
21
22
    return true;
  });
}