智慧园区前端大屏
shuishen
2025-09-15 17a81d641608545682e3f79f7c6090cac48fe81a
src/router/index.js
@@ -2,69 +2,177 @@
 * @Author: shuishen 1109946754@qq.com
 * @Date: 2024-10-25 16:35:31
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2024-10-29 17:48:52
 * @LastEditTime: 2025-07-31 19:47:37
 * @FilePath: \bigScreen\src\router\index.js
 * @Description: 
 * 
 * Copyright (c) 2024 by shuishen, All Rights Reserved. 
 */
import { createRouter, createWebHistory } from 'vue-router'
import { createRouter, createWebHistory, createWebHashHistory } from 'vue-router'
const layout = () => import("@/pages/layout/index.vue")
const subLayout = () => import('@/pages/sub/index.vue')
const mapLayout = () => import('@/pages/map/index.vue')
const mainLayout = () => import('@/pages/main/index.vue')
const singleLayout = () => import('@/pages/single/index.vue')
const companyInfo = () => import('@/views/companyInfo/index.vue')
const routes = [
  {
    path: '',
    redirect: '/layout',
  },
  {
    path: '/layout',
    name: 'layout',
    redirect: '/layout/survey',
    component: () => import("@/views/layout/index.vue"),
    children: [
      {
        path: 'survey',
    // {
    //   path: '/:catchAll(.*)',
    //   name: 'not-found',
    //   redirect: '/layout',
    // },
    {
        path: '/',
        redirect: '/layout',
    },
    {
        path: '/login',
        name: '登录页',
        component: () => import('@/pages/login.vue'),
        meta: {
          title: '园区概况'
            keepAlive: true,
            isTab: false,
            isAuth: false,
        },
        component: () => import('@/views/survey/index.vue')
      },
      {
        path: 'space',
    },
    {
        path: '/sign',
        name: '免登录',
        component: () => import('@/pages/sign.vue'),
        meta: {
          title: '应急空间'
            keepAlive: true,
            isTab: false,
            isAuth: false,
        },
        component: () => import('@/views/space/index.vue')
      },
      {
        path: 'supplies',
        meta: {
          title: '应急物资'
        },
        component: () => import('@/views/supplies/index.vue')
      },
      {
        path: 'equipment',
        meta: {
          title: '应急设备'
        },
        component: () => import('@/views/equipment/index.vue')
      },
      {
        path: 'pac',
        meta: {
          title: '三级防控'
        },
        component: () => import('@/views/pac/index.vue')
      }
    ]
  },
    },
    {
        path: '/layout',
        name: 'layout',
        redirect: '/layout/map/main/default',
        component: layout,
        children: [
            {
                path: 'map',
                name: 'map',
                component: mapLayout,
                children: [
                    {
                        path: 'main',
                        name: 'main',
                        component: mainLayout,
                        children: [
                            {
                                path: 'default',
                                meta: {
                                    title: '首页'
                                },
                                component: () => import('@/views/default/index.vue')
                            },
                            {
                                path: 'survey',
                                meta: {
                                    title: '园区概况'
                                },
                                component: () => import('@/views/survey/index.vue')
                            },
                            {
                                path: 'rs',
                                meta: {
                                    title: '风险源'
                                },
                                component: () => import('@/views/rs/index.vue')
                            },
                            {
                                path: 'rim',
                                meta: {
                                    title: '周边检索'
                                },
                                component: () => import('@/views/rim/index.vue')
                            },
                            {
                                path: 'space',
                                meta: {
                                    title: '应急空间'
                                },
                                component: () => import('@/views/space/index.vue')
                            },
                            {
                                path: 'pac',
                                meta: {
                                    title: '三级防控'
                                },
                                component: () => import('@/views/pac/index.vue')
                            },
                            {
                                path: 'pd',
                                meta: {
                                    title: '突发事件模拟'
                                },
                                component: () => import('@/views/pd/index.vue')
                            },
                        ]
                    },
                    {
                        path: 'sub',
                        name: 'sub',
                        component: subLayout,
                        redirect: '/layout/map/sub/companyInfo',
                        children: [
                            {
                                path: 'companyInfo',
                                meta: {
                                    title: '企业详情'
                                },
                                component: companyInfo
                            },
                        ]
                    }
                ]
            },
            {
                path: 'single',
                name: 'single',
                component: singleLayout,
                children: [
                    {
                        path: 'supplies',
                        meta: {
                            title: '应急物资'
                        },
                        component: () => import('@/views/supplies/index.vue')
                    },
                    {
                        path: 'rt',
                        meta: {
                            title: '救援队伍'
                        },
                        component: () => import('@/views/rt/index.vue')
                    },
                    // {
                    //   path: 'ochart',
                    //   meta: {
                    //     title: '作战图'
                    //   },
                    //   component: () => import('@/views/ochart/index.vue')
                    // },
                ]
            },
        ]
    },
]
const { VITE_APP_BASE } = import.meta.env
const router = createRouter({
  history: createWebHistory(VITE_APP_BASE),
  routes
    base: VITE_APP_BASE,
    history: createWebHashHistory(VITE_APP_BASE),
    routes
})
export default router
export default router