import {createRouter, createWebHashHistory} from 'vue-router' // import i18n from '@/utils/lang' // import User from '../views/sys/User.vue' // import Role from '../views/sys/Role.vue' // import Menu from '../views/sys/Menu.vue' const router = createRouter({ history: createWebHashHistory(), routes: [ { path: '/', name: 'home', //component: HomeView component: () => import('../views/LoginView.vue') }, { path: '/login', name: 'login', component: () => import('../views/LoginView.vue') }, { path: '/new-page', // 新增的无需登录的页面 name: 'newPage', component: () => import('../views/NewPage.vue') }, { path: '/main', name: 'main', component: () => import('../layout/MainErpView.vue'), children:[ { path: 'Temperedlayout', name: 'Temperedlayout', component: () => import('../views/TL/Temperedlayout/Temperedlayout.vue'), children:[ { path: 'selectLayout', name: 'selectLayout', component: () => import('../views/TL/Temperedlayout/Temperedlayout.vue'), } ] }, /*----------- 上片机 ----------------*/ { path: 'Returns', name: 'return', component: () => import('../views/Returns/return.vue'), children:[ { path: '/Returns/upreturns', name: 'upreturns', component: () => import('../views/Returns/upreturns.vue') }, { path: '/Returns/upreturns2', name: 'upreturns2', component: () => import('../views/Returns/upreturns2.vue') }, ] }, /*----------- 掰片/识别 ----------------*/ { path: 'Identify', name: 'ident', component: () => import('../views/Identify/ident.vue'), children: [ { path: '/Identify/identify', name: 'identify', component: () => import('../views/Identify/identify.vue') }, { path: '/Identify/identifwu', name: 'identifwu', component: () => import('../views/Identify/identifwu.vue') }, ] }, /*----------- 卧式缓存 ----------------*/ { path: 'Caching', name: 'Caching', component: () => import('../views/Caching/caching.vue'), children:[ { path: '/Caching/cachingbefore', name: 'cachingbefore', component: () => import('../views/Caching/cachingbefore.vue') }, { path: '/Caching/cachingun', name: 'cachingun', component: () => import('../views/Caching/cachingun.vue') }, ] }, /*----------- 磨边(冷加工) ----------------*/ { path: 'StockBasicData', name: 'Select', component: () => import('../views/StockBasicData/Select.vue'), children:[ { path: '/StockBasicData/stockBasicData', name: 'stockBasicData', component: () => import('../views/StockBasicData/stockBasicData.vue') }, { path: '/StockBasicData/stockBasicDatatwo', name: 'stockBasicDatatwo', component: () => import('../views/StockBasicData/stockBasicDatatwo.vue') }, { path: '/StockBasicData/stockBasicyiwu', name: 'stockBasicyiwu', component: () => import('../views/StockBasicData/stockBasicyiwu.vue') }, ] }, /*----------- 大理片笼 ----------------*/ { path: 'Slicecage', name: 'Slicecage', component: () => import('../views/Slicecage/slicecage.vue'), children:[ { path: '/Slicecage/slicecage', name: 'slicecage', component: () => import('../views/Slicecage/slicecage.vue') }, ] }, /*----------- 钢化 ----------------*/ { path: 'PurchaseReturn', name: 'purchase', component: () => import('../views/PurchaseReturn/purchase.vue'), children:[ { path: '/PurchaseReturn/purchaseReturn', name: 'purchaseReturn', component: () => import('../views/PurchaseReturn/purchaseReturn.vue') }, { path: '/PurchaseReturn/purchaseStorage', name: 'purchaseStorage', component: () => import('../views/PurchaseReturn/purchaseStorage.vue') }, ] }, /*----------- 下片台 ----------------*/ { path: 'UnLoadGlass', name: 'UnLoadGlass', component: () => import('../views/UnLoadGlass/UnLoadGlass.vue'), children:[ { path: '/UnLoadGlass/loadmachinerack', name: 'loadmachinerack', component: () => import('../views/UnLoadGlass/loadmachinerack.vue') }, { path: '/UnLoadGlass/loadmachineracktwo', name: 'loadmachineracktwo', component: () => import('../views/UnLoadGlass/loadmachineracktwo.vue') }, { path: '/UnLoadGlass/Landingindication', name: 'Landingindication', component: () => import('../views/UnLoadGlass/Landingindication.vue') }, { path: '/UnLoadGlass/Landingindicationtwo', name: 'Landingindicationtwo', component: () => import('../views/UnLoadGlass/Landingindicationtwo.vue') } ] }, /*----------- 仓储中心 ----------------*/ { path: 'GlassStorage', name: 'GlassStorage', component: () => import('../views/GlassStorage/GlassStorage.vue'), children:[ { path: '/GlassStorage/MaterialRackManagement', name: 'MaterialRackManagement', component: () => import('../views/GlassStorage/MaterialRackManagement.vue') }, { path: '/GlassStorage/rawfilmstorage', name: 'rawfilmstorage', component: () => import('../views/GlassStorage/rawfilmstorage.vue') } ] }, /*----------- 可视化系统 ----------------*/ { path: 'Visualization', name: 'screen', component: () => import('../views/Visualization/screen.vue'), children:[ { path: '/Visualization/screenone', name: 'screenone', component: () => import('../views/Visualization/screenone.vue') }, { path: '/Visualization/screentwo', name: 'screentwo', component: () => import('../views/Visualization/screentwo.vue') }, { path: '/Visualization/screenthree', name: 'screenthree', component: () => import('../views/Visualization/screenthree.vue') } ] }, /*----------- 系统管理 ----------------*/ { path: 'User', name: 'user', component: () => import('../views/User/user.vue'), children:[ { path: '/User/userlist', name: 'userlist', component: () => import('../views/User/userlist.vue') }, { path: '/User/rolelist', name: 'rolelist', component: () => import('../views/User/rolelist.vue') }, { path: '/User/permissions', name: 'permissions', component: () => import('../views/User/permissions.vue') } ] }, /*----------- 大屏显示 ----------------*/ { path: 'largescreen', name: 'largescreen', component: () => import('../views/largescreen/largescreen.vue'), children:[ { path: '/largescreen/largescreen', name: 'largescreen', component: () => import('../views/largescreen/largescreen.vue') }, ] }, /*----------- 报工管理 ----------------*/ { path: 'reportWork', name: 'reportWork', component: () => import('../views/ReportWork/reportWork.vue'), children: [ { path: '/ReportWork/reportWork', name: 'reportWork', component: () => import('../views/ReportWork/reportWork.vue') }, ] }, /*----------- 中空 ----------------*/ { path: 'hollow', name: 'hollowequipment', component: () => import('../views/hollow/hollowequipment.vue'), children: [ { path: '/hollow/hollowequipment', name: 'hollowequipment', component: () => import('../views/hollow/hollowequipment.vue') }, ] }, /*----------- 管理系统 ----------------*/ { path: 'sys', name: 'screen', component: () => import('../views/Visualization/screen.vue'), children: [ // { // path: '/sys/users', // name: 'SysUser', // component: User // }, // { // path: '/sys/roles', // name: 'SysRole', // component: Role // }, // { // path: '/sys/menus', // name: 'SysMenu', // component: Menu // }, ] }, { path: '', redirect: '/Returns/returns' } ] }, { path: '/register', name: 'register', component: () => import('../views/RegisterView.vue') } ] }) // 导航守卫 router.beforeEach((to, from, next) => { const isAuthenticated = !!localStorage.getItem('authToken'); // 假设这是你的登录状态检查逻辑 if (to.matched.some(record => record.meta.requiresAuth) && !isAuthenticated) { next({ name: 'login' }); // 如果需要登录但未登录,则重定向到登录页面 } else { next(); // 否则继续导航 } }); export default router