routes.ts 1,7 КБ
Newer Older
Medvedev Anton's avatar
Medvedev Anton включено в состав коммита
1
import { RouteRecordRaw } from 'vue-router';
daniilft's avatar
daniilft включено в состав коммита
2
import { useCurrentUserStore } from 'src/stores/current-user';
Medvedev Anton's avatar
Medvedev Anton включено в состав коммита
3
4


daniilft's avatar
daniilft включено в состав коммита
5
const routes: RouteRecordRaw[] = [
Medvedev Anton's avatar
Medvedev Anton включено в состав коммита
6
7
  {
    path: '/',
daniilft's avatar
daniilft включено в состав коммита
8
9
10
11
12
13
14
15
16
17
    name: 'start',
    component: () => import('layouts/IndexLayout.vue'),
    beforeEnter:(to,from)=>{
      const store = useCurrentUserStore()
      console.log(store);
      if (store.getUserId) {
        return {name: 'projects'}
      }
      return
    },
Medvedev Anton's avatar
Medvedev Anton включено в состав коммита
18
  },
Georgiy Medvedev's avatar
#16    
Georgiy Medvedev включено в состав коммита
19
  {
daniilft's avatar
daniilft включено в состав коммита
20
21
    path: '/projects',

Georgiy Medvedev's avatar
#16    
Georgiy Medvedev включено в состав коммита
22
23
    component: () => import('layouts/MainLayout.vue'),
    children: [
daniilft's avatar
daniilft включено в состав коммита
24
25
26
27
28
29
30
31
32
33
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
      {
        path: '',
        name: 'projects',
        component: () => import('pages/ProjectsPage.vue'),
        beforeEnter:(to,from)=>{
          const store = useCurrentUserStore()
          console.log(store);
          if (!store.getUserId) {
            return {name: 'start'}
          }
          return
        },
      },
      {
        path: '/login',
        name: 'login',
        component: () => import('pages/LoginPage.vue'),
        beforeEnter:(to,from)=>{
          const store = useCurrentUserStore()
          console.log(store);
          if (store.getUserId) {
            return {name: 'projects'}
          }
          return
        },
      },
      {
        path: '/profile',
        name: 'profile',
        component: () => import('pages/ProfilePage.vue'),
        beforeEnter:(to,from)=>{
          const store = useCurrentUserStore()
          console.log(store);
          if (!store.getUserId) {
            return {name: 'start'}
          }
          return
        },
      },
kv880888's avatar
kv880888 включено в состав коммита
63

Georgiy Medvedev's avatar
#16    
Georgiy Medvedev включено в состав коммита
64
65
    ],
  },
Medvedev Anton's avatar
Medvedev Anton включено в состав коммита
66

daniilft's avatar
daniilft включено в состав коммита
67
68
  // Always leave this as last one,
  // but you can also remove it
Medvedev Anton's avatar
Medvedev Anton включено в состав коммита
69
70
71
72
73
74
  {
    path: '/:catchAll(.*)*',
    component: () => import('pages/ErrorNotFound.vue'),
  },
];

Georgiy Medvedev's avatar
#16    
Georgiy Medvedev включено в состав коммита
75
export default routes;