This commit is contained in:
yiqiuyang
2026-05-17 23:25:42 +08:00
parent e9a34e3599
commit 61602a736b
12 changed files with 3578 additions and 78 deletions

View File

@ -1,6 +1,82 @@
import {createWebHashHistory, createRouter} from 'vue-router'
import {isMobile} from '@/utils/responsive'
import HomeView from '@/views/homepage/index.vue'
// 动态加载首页组件
const HomeView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/homepage/mobile.vue').then(resolve)
} else {
import('@/views/homepage/index.vue').then(resolve)
}
})
}
// 动态加载新闻中心组件
const NewsView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/news/mobile.vue').then(resolve)
} else {
import('@/views/news/index.vue').then(resolve)
}
})
}
// 动态加载联系我们组件
const LinkView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/link/mobile.vue').then(resolve)
} else {
import('@/views/link/index.vue').then(resolve)
}
})
}
// 动态加载关于我们组件
const AboutView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/about/mobile.vue').then(resolve)
} else {
import('@/views/about/index.vue').then(resolve)
}
})
}
// 动态加载硬件系统组件
const HardwareSystemView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/product/hardwareSystem/mobile.vue').then(resolve)
} else {
import('@/views/product/hardwareSystem.vue').then(resolve)
}
})
}
// 动态加载软件系统组件
const SoftwareSystemView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/product/softwareSystem/mobile.vue').then(resolve)
} else {
import('@/views/product/softwareSystem.vue').then(resolve)
}
})
}
// 动态加载产品详情组件
const ProductDetailView = () => {
return new Promise((resolve) => {
if (isMobile.value) {
import('@/views/product/detail/mobile.vue').then(resolve)
} else {
import('@/views/product/detail.vue').then(resolve)
}
})
}
const routes = [
// ============================================ 首页 ============================================
@ -10,7 +86,7 @@ const routes = [
{
path: '/product/hardwareSystem',
name: 'HardwareSystem',
component: () => import('@/views/product/hardwareSystem.vue'),
component: HardwareSystemView,
meta: {
title: '低空监管体系',
},
@ -18,7 +94,7 @@ const routes = [
{
path: '/product/softwareSystem',
name: 'SoftwareSystem',
component: () => import('@/views/product/softwareSystem.vue'),
component: SoftwareSystemView,
meta: {
title: '低空远程识别设备',
},
@ -26,76 +102,39 @@ const routes = [
{
path: '/product/detail',
name: 'ProductDetail',
component: () => import('@/views/product/detail.vue'),
component: ProductDetailView,
meta: {
title: '产品详情',
},
},
// ============================================ 服务与支撑 ============================================
{
path: '/services',
name: 'Services',
component: () => import('@/views/services/index.vue'),
meta: {
title: '服务与支撑',
},
},
// ============================================ 新闻中心 ============================================
{
path: '/news',
name: 'News',
component: () => import('@/views/news/index.vue'),
component: NewsView,
meta: {
title: '新闻中心',
},
},
{
path: '/news/detail',
name: 'NewsDetail',
component: () => import('@/views/news/detail.vue'),
meta: {
title: '新闻详情',
},
},
// ============================================ 关于我们 ============================================
{
path: '/about',
name: 'About',
component: () => import('@/views/about/index.vue'),
meta: {
title: '关于我们',
},
},
// ============================================ 联系我们 ============================================
{
path: '/link',
name: 'Link',
component: () => import('@/views/link/index.vue'),
component: LinkView,
meta: {
title: '联系我们',
},
},
// ============================================ 下载中心 ============================================
// ============================================ 关于我们 ============================================
{
path: '/download',
name: 'Download',
component: () => import('@/views/download/index.vue'),
path: '/about',
name: 'About',
component: AboutView,
meta: {
title: '下载中心',
},
},
// ============================================ 管理页面 ============================================
{
path: '/manager',
name: 'Manager',
component: () => import('@/views/manager/index.vue'),
meta: {
title: '管理中心',
title: '关于我们',
},
},
]
@ -105,20 +144,4 @@ const router = createRouter({
routes,
})
// router.beforeEach(async (to, from, next) => {
// const {useNavStore} = await import('@/store/nav.js')
// const navStore = useNavStore()
// navStore.setLoad(true)
// next()
// })
router.afterEach((to, from) => {
// 只有路径变化时才滚动到顶部
if (to.path !== from.path) {
requestAnimationFrame(() => {
window.scrollTo({top: 0, behavior: 'instant'})
})
}
})
export default router