router.config.js 6.97 KB
Newer Older
1
export default [
2 3 4
  // user
  {
    path: '/user',
5
    component: '../layouts/UserLayout',
6 7
    routes: [
      { path: '/user', redirect: '/user/login' },
8
      { path: '/user/login', component: './User/Login' },
9 10 11 12 13 14 15
      { path: '/user/register', component: './User/Register' },
      { path: '/user/register-result', component: './User/RegisterResult' },
    ],
  },
  // app
  {
    path: '/',
afc163's avatar
afc163 committed
16
    component: '../layouts/BasicLayout',
afc163's avatar
afc163 committed
17
    Routes: ['src/pages/Authorized'],
18
    authority: ['admin', 'user'],
19 20 21 22 23 24 25 26
    routes: [
      // dashboard
      { path: '/', redirect: '/dashboard/analysis' },
      {
        path: '/dashboard',
        name: 'dashboard',
        icon: 'dashboard',
        routes: [
afc163's avatar
afc163 committed
27 28 29 30 31
          {
            path: '/dashboard/analysis',
            name: 'analysis',
            component: './Dashboard/Analysis',
          },
32 33 34 35 36 37 38 39 40 41
          {
            path: '/dashboard/monitor',
            name: 'monitor',
            component: './Dashboard/Monitor',
          },
          {
            path: '/dashboard/workplace',
            name: 'workplace',
            component: './Dashboard/Workplace',
          },
42 43 44 45 46 47 48 49
        ],
      },
      // forms
      {
        path: '/form',
        icon: 'form',
        name: 'form',
        routes: [
afc163's avatar
afc163 committed
50 51 52 53 54
          {
            path: '/form/basic-form',
            name: 'basicform',
            component: './Forms/BasicForm',
          },
55 56 57 58
          {
            path: '/form/step-form',
            name: 'stepform',
            component: './Forms/StepForm',
afc163's avatar
afc163 committed
59
            hideChildrenInMenu: true,
60
            routes: [
afc163's avatar
afc163 committed
61 62 63 64 65 66 67 68 69 70
              {
                path: '/form/step-form',
                name: 'stepform',
                redirect: '/form/step-form/info',
              },
              {
                path: '/form/step-form/info',
                name: 'info',
                component: './Forms/StepForm/Step1',
              },
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
              {
                path: '/form/step-form/confirm',
                name: 'confirm',
                component: './Forms/StepForm/Step2',
              },
              {
                path: '/form/step-form/result',
                name: 'result',
                component: './Forms/StepForm/Step3',
              },
            ],
          },
          {
            path: '/form/advanced-form',
            name: 'advancedform',
86
            authority: ['admin'],
87 88 89 90 91 92 93 94 95 96
            component: './Forms/AdvancedForm',
          },
        ],
      },
      // list
      {
        path: '/list',
        icon: 'table',
        name: 'list',
        routes: [
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
          {
            path: '/list/table-list',
            name: 'searchtable',
            component: './List/TableList',
          },
          {
            path: '/list/basic-list',
            name: 'basiclist',
            component: './List/BasicList',
          },
          {
            path: '/list/card-list',
            name: 'cardlist',
            component: './List/CardList',
          },
112 113 114 115 116
          {
            path: '/list/search',
            name: 'searchlist',
            component: './List/List',
            routes: [
JoeyKo's avatar
JoeyKo committed
117 118 119 120
              {
                path: '/list/search',
                redirect: '/list/search/articles',
              },
121 122 123 124 125 126 127 128 129 130
              {
                path: '/list/search/articles',
                name: 'articles',
                component: './List/Articles',
              },
              {
                path: '/list/search/projects',
                name: 'projects',
                component: './List/Projects',
              },
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
              {
                path: '/list/search/applications',
                name: 'applications',
                component: './List/Applications',
              },
            ],
          },
        ],
      },
      {
        path: '/profile',
        name: 'profile',
        icon: 'profile',
        routes: [
          // profile
146 147 148 149 150 151 152 153
          {
            path: '/profile/basic',
            name: 'basic',
            component: './Profile/BasicProfile',
          },
          {
            path: '/profile/advanced',
            name: 'advanced',
154
            authority: ['admin'],
155 156
            component: './Profile/AdvancedProfile',
          },
157 158 159 160 161 162 163 164
        ],
      },
      {
        name: 'result',
        icon: 'check-circle-o',
        path: '/result',
        routes: [
          // result
165 166 167 168 169
          {
            path: '/result/success',
            name: 'success',
            component: './Result/Success',
          },
170 171 172 173 174 175 176 177 178
          { path: '/result/fail', name: 'fail', component: './Result/Error' },
        ],
      },
      {
        name: 'exception',
        icon: 'warning',
        path: '/exception',
        routes: [
          // exception
179 180 181 182 183 184 185 186 187 188 189 190 191 192 193
          {
            path: '/exception/403',
            name: 'not-permission',
            component: './Exception/403',
          },
          {
            path: '/exception/404',
            name: 'not-find',
            component: './Exception/404',
          },
          {
            path: '/exception/500',
            name: 'server-error',
            component: './Exception/500',
          },
194 195 196 197
          {
            path: '/exception/trigger',
            name: 'trigger',
            hideInMenu: true,
afc163's avatar
afc163 committed
198
            component: './Exception/TriggerException',
199 200 201 202 203 204 205 206 207 208 209 210 211
          },
        ],
      },
      {
        name: 'account',
        icon: 'user',
        path: '/account',
        routes: [
          {
            path: '/account/center',
            name: 'center',
            component: './Account/Center/Center',
            routes: [
afc163's avatar
afc163 committed
212 213 214 215
              {
                path: '/account/center',
                redirect: '/account/center/articles',
              },
216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234
              {
                path: '/account/center/articles',
                component: './Account/Center/Articles',
              },
              {
                path: '/account/center/applications',
                component: './Account/Center/Applications',
              },
              {
                path: '/account/center/projects',
                component: './Account/Center/Projects',
              },
            ],
          },
          {
            path: '/account/settings',
            name: 'settings',
            component: './Account/Settings/Info',
            routes: [
afc163's avatar
afc163 committed
235 236 237 238
              {
                path: '/account/settings',
                redirect: '/account/settings/base',
              },
239 240 241 242 243 244 245 246
              {
                path: '/account/settings/base',
                component: './Account/Settings/BaseView',
              },
              {
                path: '/account/settings/security',
                component: './Account/Settings/SecurityView',
              },
afc163's avatar
afc163 committed
247 248 249 250
              {
                path: '/account/settings/binding',
                component: './Account/Settings/BindingView',
              },
251 252 253 254 255 256 257 258
              {
                path: '/account/settings/notification',
                component: './Account/Settings/NotificationView',
              },
            ],
          },
        ],
      },
259 260 261
      {
        component: '404',
      },
262 263 264
    ],
  },
];