2026-03-05 23:45:39 +08:00
|
|
|
import NProgress from 'nprogress' // progress bar
|
|
|
|
|
import 'nprogress/nprogress.css'
|
|
|
|
|
import { createRouter, createWebHashHistory } from 'vue-router'
|
|
|
|
|
|
|
|
|
|
import createRouteGuard from './guard'
|
|
|
|
|
import { appRoutes } from './routes'
|
2026-03-08 22:41:42 +08:00
|
|
|
import { DEFAULT_LAYOUT, NOT_FOUND_ROUTE, REDIRECT_MAIN } from './routes/base'
|
2026-03-05 23:45:39 +08:00
|
|
|
|
|
|
|
|
NProgress.configure({ showSpinner: false }) // NProgress Configuration
|
|
|
|
|
|
|
|
|
|
const router = createRouter({
|
|
|
|
|
history: createWebHashHistory('./'),
|
|
|
|
|
routes: [
|
|
|
|
|
{
|
|
|
|
|
path: '/',
|
2026-03-21 10:26:44 +08:00
|
|
|
name: 'root',
|
|
|
|
|
component: () => import('@/layout/standalone-layout.vue'),
|
|
|
|
|
redirect: '/home',
|
|
|
|
|
children: [
|
|
|
|
|
{
|
|
|
|
|
path: '/home',
|
|
|
|
|
name: 'Home',
|
|
|
|
|
component: () => import('@/views/home/index.vue'),
|
|
|
|
|
meta: {
|
|
|
|
|
requiresAuth: false,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
path: '/help',
|
|
|
|
|
name: 'Help',
|
|
|
|
|
component: () => import('@/views/help/index.vue'),
|
|
|
|
|
meta: {
|
|
|
|
|
requiresAuth: false,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
],
|
2026-03-05 23:45:39 +08:00
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
path: '/login',
|
|
|
|
|
name: 'login',
|
|
|
|
|
component: () => import('@/views/login/index.vue'),
|
|
|
|
|
meta: {
|
|
|
|
|
requiresAuth: false,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
...appRoutes,
|
|
|
|
|
REDIRECT_MAIN,
|
2026-03-08 22:41:42 +08:00
|
|
|
// NOT_FOUND_ROUTE,
|
2026-03-05 23:45:39 +08:00
|
|
|
],
|
|
|
|
|
scrollBehavior() {
|
|
|
|
|
return { top: 0 }
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
createRouteGuard(router)
|
|
|
|
|
|
|
|
|
|
export default router
|