- 新增挑战列表页 `app/(tabs)/challenges.tsx`,展示热门挑战卡片 - 新增挑战详情页 `app/challenges/[id].tsx`,支持排行榜、分享与参与 - 在标签栏中新增“挑战”入口,替换原有“发现”与“AI”页 - 调整标签栏间距与圆角,适配新布局 - 新增挑战相关路由常量 `TAB_CHALLENGES` - 迁移 `coach.tsx` 与 `explore.tsx` 至根目录,保持结构清晰
98 lines
2.2 KiB
TypeScript
98 lines
2.2 KiB
TypeScript
// 应用路由常量定义
|
|
export const ROUTES = {
|
|
// Tab路由
|
|
TAB_EXPLORE: '/explore',
|
|
TAB_COACH: '/coach',
|
|
TAB_GOALS: '/goals',
|
|
TAB_STATISTICS: '/statistics',
|
|
TAB_CHALLENGES: '/challenges',
|
|
TAB_PERSONAL: '/personal',
|
|
|
|
// 训练相关路由
|
|
WORKOUT_TODAY: '/workout/today',
|
|
WORKOUT_CREATE_SESSION: '/workout/create-session',
|
|
WORKOUT_SESSION: '/workout/session',
|
|
|
|
// 训练计划相关路由
|
|
TRAINING_PLAN: '/training-plan',
|
|
|
|
// 体态评估路由
|
|
AI_POSTURE_ASSESSMENT: '/ai-posture-assessment',
|
|
|
|
// 挑战路由
|
|
CHALLENGE: '/challenge',
|
|
CHALLENGE_DAY: '/challenge/day',
|
|
|
|
// 文章路由
|
|
ARTICLE: '/article',
|
|
|
|
// 用户相关路由
|
|
AUTH_LOGIN: '/auth/login',
|
|
PROFILE_EDIT: '/profile/edit',
|
|
PROFILE_GOALS: '/profile/goals',
|
|
|
|
// 法律相关路由
|
|
LEGAL_USER_AGREEMENT: '/legal/user-agreement',
|
|
LEGAL_PRIVACY_POLICY: '/legal/privacy-policy',
|
|
|
|
// 营养相关路由
|
|
NUTRITION_RECORDS: '/nutrition/records',
|
|
FOOD_LIBRARY: '/food-library',
|
|
VOICE_RECORD: '/voice-record',
|
|
|
|
// 体重记录相关路由
|
|
WEIGHT_RECORDS: '/weight-records',
|
|
|
|
// 健康相关路由
|
|
FITNESS_RINGS_DETAIL: '/fitness-rings-detail',
|
|
SLEEP_DETAIL: '/sleep-detail',
|
|
BASAL_METABOLISM_DETAIL: '/basal-metabolism-detail',
|
|
|
|
// 饮水相关路由
|
|
WATER_DETAIL: '/water/detail',
|
|
WATER_SETTINGS: '/water/settings',
|
|
WATER_REMINDER_SETTINGS: '/water/reminder-settings',
|
|
|
|
// 任务相关路由
|
|
TASK_DETAIL: '/task-detail',
|
|
|
|
// 目标管理路由 (已移至tab中)
|
|
// GOAL_MANAGEMENT: '/goal-management',
|
|
|
|
// 开发者相关路由
|
|
DEVELOPER: '/developer',
|
|
DEVELOPER_LOGS: '/developer/logs',
|
|
} as const;
|
|
|
|
// 路由参数常量
|
|
export const ROUTE_PARAMS = {
|
|
// 训练会话参数
|
|
WORKOUT_SESSION_ID: 'id',
|
|
|
|
// 训练计划参数
|
|
TRAINING_PLAN_ID: 'planId',
|
|
TRAINING_PLAN_TAB: 'tab',
|
|
|
|
// 挑战日参数
|
|
CHALLENGE_DAY: 'day',
|
|
|
|
// 文章参数
|
|
ARTICLE_ID: 'id',
|
|
|
|
// 任务参数
|
|
TASK_ID: 'taskId',
|
|
|
|
// 重定向参数
|
|
REDIRECT_TO: 'redirectTo',
|
|
REDIRECT_PARAMS: 'redirectParams',
|
|
} as const;
|
|
|
|
// 查询参数常量
|
|
export const QUERY_PARAMS = {
|
|
// 训练计划查询参数
|
|
TRAINING_PLAN_TAB_SCHEDULE: 'schedule',
|
|
|
|
// 教练页面参数
|
|
COACH_NAME: 'name',
|
|
} as const;
|