Files
vf_react/src/routes/homeRoutes.js
2025-11-21 14:07:18 +08:00

116 lines
3.0 KiB
JavaScript

// src/routes/homeRoutes.js
// Home 模块子路由配置
import { lazyComponents } from './lazy-components';
import { PROTECTION_MODES } from './constants/protectionModes';
/**
* Home 模块的子路由配置
* 这些路由将作为 /home/* 的嵌套路由
*
* 注意:
* - 使用相对路径(不带前导斜杠)
* - 空字符串 '' 表示索引路由,匹配 /home
* - 这些路由将通过 Outlet 渲染到父路由中
*/
export const homeRoutes = [
// 首页 - /home
{
path: '',
component: lazyComponents.HomePage,
protection: PROTECTION_MODES.PUBLIC,
meta: {
title: '首页',
description: '价值前沿首页'
}
},
// 个人中心 - /home/center
{
path: 'center',
component: lazyComponents.CenterDashboard,
protection: PROTECTION_MODES.MODAL,
meta: {
title: '个人中心',
description: '用户个人中心'
}
},
// 个人资料 - /home/profile
{
path: 'profile',
component: lazyComponents.ProfilePage,
protection: PROTECTION_MODES.MODAL,
meta: {
title: '个人资料',
description: '用户个人资料'
}
},
// 账户设置 - /home/settings
{
path: 'settings',
component: lazyComponents.SettingsPage,
protection: PROTECTION_MODES.MODAL,
meta: {
title: '账户设置',
description: '用户账户设置'
}
},
// 订阅管理 - /home/pages/account/subscription
{
path: 'pages/account/subscription',
component: lazyComponents.Subscription,
protection: PROTECTION_MODES.MODAL,
meta: {
title: '订阅管理',
description: '管理订阅服务'
}
},
// 隐私政策 - /home/privacy-policy
{
path: 'privacy-policy',
component: lazyComponents.PrivacyPolicy,
protection: PROTECTION_MODES.PUBLIC,
meta: {
title: '隐私政策',
description: '隐私保护政策'
}
},
// 用户协议 - /home/user-agreement
{
path: 'user-agreement',
component: lazyComponents.UserAgreement,
protection: PROTECTION_MODES.PUBLIC,
meta: {
title: '用户协议',
description: '用户使用协议'
}
},
// 微信授权回调 - /home/wechat-callback
{
path: 'wechat-callback',
component: lazyComponents.WechatCallback,
protection: PROTECTION_MODES.PUBLIC,
meta: {
title: '微信授权',
description: '微信授权回调页面'
}
},
// 回退路由 - 匹配任何未定义的 /home/* 路径
{
path: '*',
component: lazyComponents.HomePage,
protection: PROTECTION_MODES.PUBLIC,
meta: {
title: '首页',
description: '价值前沿首页'
}
},
];