Blame view

src/router/permission.js 2.13 KB
c1b532ad   梁保满   权限配置,路由基础设置
1
  import NProgress from "nprogress"
4c4f7640   梁保满   路由表,路由前端文件
2
  
c1b532ad   梁保满   权限配置,路由基础设置
3
4
  import router from "./index"
  import store from "../store"
c1b532ad   梁保满   权限配置,路由基础设置
5
6
7
8
9
10
  
  //  获取角色信息,根据用户权限动态加载路由
  router.beforeEach((to, from, next) => {
    NProgress.start()
    if (store.getters.token) {
      if (to.path === "/login") {
4c4f7640   梁保满   路由表,路由前端文件
11
        next()
c1b532ad   梁保满   权限配置,路由基础设置
12
      } else {
4c4f7640   梁保满   路由表,路由前端文件
13
14
15
16
17
18
19
20
21
22
23
24
        // if (!store.getters.info.permissions) {
        //     next({ path: to.path })
        // } else {
        //   let is404 = to.matched.some(record => {
        //     if (record.meta.role) {
        //       return store.getters.info.authorityRouter === -1
        //     }
        //   })
        //   if (is404) {
        //     next({ path: "/404" })
        //     return false
        //   }
c1b532ad   梁保满   权限配置,路由基础设置
25
          next()
4c4f7640   梁保满   路由表,路由前端文件
26
        // }
c1b532ad   梁保满   权限配置,路由基础设置
27
28
29
30
31
      }
    } else {
      if (to.path === "/login") {
        next()
      }
4c4f7640   梁保满   路由表,路由前端文件
32
33
      next({ path: "/login" })
  
c1b532ad   梁保满   权限配置,路由基础设置
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
    }
  })
  
  router.afterEach(() => {
    NProgress.done()
  })
  
  
  // //  真实使用 
  // import fetchUser from "@/api/apis/user"
  //
  // router.beforeEach((to, from, next) => {
  //   if (store.getters.token && store.getters.token !== "undefined") {
  //     // store.dispatch('setToken', store.getters.token)
  //     if (to.path === "/login") {
  //       next({path: "/"})
  //     } else {
  //       if (!store.getters.info) {
  //         (async function getAddRouters () {
  //           fetchUser.fetchGetUserInfo().then(async function (response) {
  //             await store.dispatch("setInfo", response.data)
              // await store.dispatch("newRoutes", store.getters.info.authorityRouter)
  //             await router.addRoutes(store.getters.addRouters)
  //             next({path: "/index"})
  //           }).catch(function (error) {
  //             console.log(error)
  //           })
  //         }())
  //       } else {
  //         let is404 = to.matched.some(record => {
  //           console.log(record)
  //           if (record.meta.role) {
  //             return store.getters.info.authorityRouter === -1
  //           }
  //         })
  //         if (is404) {
  //           next({path: "/404"})
  //           return false
  //         }
  //         next()
  //       }
  //     }
  //   } else {
  //     if (to.path === "/login") {
  //       next()
  //     }
  //     next({path: "/login"})
  //   }
  // })