import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router';
import Layout from '@/views/layout/index.vue';
export const constantRoutes: RouteRecordRaw[] = [
{
path: '/redirect',
component: Layout,
meta: { hidden: true },
children: [
{
path: '/redirect/:path(.*)',
component: () => import('@/views/redirect/index.vue'),
},
],
},
{
path: '/',
component: Layout,
meta: { hidden: true },
},
];
* 创建路由
*/
const router = createRouter({
history: createWebHashHistory(),
routes: constantRoutes as RouteRecordRaw[],
scrollBehavior: () => ({ left: 0, top: 0 }),
});
* 重置路由
*/
export function resetRouter() {
router.replace({ path: '/dashboard' });
}
router.beforeEach((to, from, next) => {
if (to.matched.length === 0) {
from.name ? next({ name: from.name }) : next({ path: '/' });
} else {
next();
}
});
export default router;