import { createRouter, createWebHistory } from 'vue-router' import { installRouteGuard } from '../utils/routeGuard.js' const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), routes: [ { path: '/', redirect: '/loading' // 默认跳转到加载页面 }, { path: '/loading', name: 'loading', component: () => import('../views/LoadingView.vue'), meta: { requiresAuth: false, isPublic: true } }, { path: '/host-center', name: 'host-center', component: () => import('../views/HostCenterView.vue'), meta: { requiresAuth: true } }, { path: '/agency-center', name: 'agency-center', component: () => import('../views/AgencyCenterView.vue'), meta: { requiresAuth: true } }, { path: '/bd-center', name: 'bd-center', component: () => import('../views/BDCenterView.vue'), meta: { requiresAuth: true } }, { path: '/coin-seller', name: 'coin-seller', component: () => import('../views/CoinSellerView.vue'), meta: { requiresAuth: true } }, { path: '/apply', name: 'apply', component: () => import('../views/ApplyView.vue'), meta: { requiresAuth: false } }, { path: '/message', name: 'message', component: () => import('../views/MessageView.vue'), meta: { requiresAuth: true } }, { path: '/transfer', name: 'transfer', component: () => import('../views/TransferView.vue'), meta: { requiresAuth: true } }, { path: '/exchange-gold-coins', name: 'exchange-gold-coins', component: () => import('../views/ExchangeGoldCoinsView.vue'), meta: { requiresAuth: true } }, // 辅助页面 { path: '/about', name: 'about', component: () => import('../views/AboutView.vue'), }, { path: '/host-setting', name: 'host-setting', component: () => import('../views/HostSettingView.vue'), meta: { requiresAuth: true } }, { path: '/search-payee', name: 'search-payee', component: () => import('../views/SearchPayeeView.vue'), meta: { requiresAuth: true } }, { path: '/information-details', name: 'information-details', component: () => import('../views/InformationDetailsView.vue'), meta: { requiresAuth: true } }, { path: '/invite-members', name: 'invite-members', component: () => import('../views/InviteMembersView.vue'), meta: { requiresAuth: true } }, { path: '/team-bill', name: 'team-bill', component: () => import('../views/TeamBillView.vue'), meta: { requiresAuth: true } }, { path: '/team-member', name: 'team-member', component: () => import('../views/TeamMemberView.vue'), meta: { requiresAuth: true } }, { path: '/platform-policy', name: 'platform-policy', component: () => import('../views/PlatformPolicyView.vue'), meta: { requiresAuth: true } }, { path: '/coin-seller-search', name: 'coin-seller-search', component: () => import('../views/CoinSellerSearchView.vue'), meta: { requiresAuth: true } }, { path: '/seller-records', name: 'seller-records', component: () => import('../views/SellerRecordsView.vue'), meta: { requiresAuth: true } }, { path: '/bd-setting', name: 'bd-setting', component: () => import('../views/BDSettingView.vue'), meta: { requiresAuth: true } }, // 公共页面 { path: '/not_app', name: 'not-app', component: () => import('../views/NotAppView.vue'), meta: { requiresAuth: false } }, // 404 页面 { path: '/:pathMatch(.*)*', name: 'not-found', redirect: '/apply' }, { path: '/history-salary', name: 'history-salary', component: () => import('../views/HistorySalaryView.vue'), meta: { requiresAuth: true } }, { path: '/platform-salary', name: 'platform-salary', component: () => import('../views/PlatformPolicyView.vue'), meta: { requiresAuth: true } } ], }) // 安装路由守卫 installRouteGuard(router) export default router