feat(mobile): 实现全局路由守卫功能,自动处理用户未登录跳转
✨ 新增功能: - 全局路由守卫模块 (route-guard.js) - 多层次权限验证 (登录状态+Token存在+Token过期检查) - 自动拦截机制 (页面级+跳转级+HTTP级+应用级) - 401响应自动处理和跳转 - 路由守卫测试页面 🔧 技术实现: - checkPageAccess() 全局页面权限检查 - guardedNavigate/guardedSwitchTab 带权限检查的跳转 - handleUnauthorized() HTTP拦截器401处理 - 公开页面配置管理 - 优雅的错误提示和跳转逻辑 📱 页面集成: - App.vue 初始化路由守卫 - profile/workbench 页面添加权限检查 - index 页面优化跳转逻辑 - 新增测试页面验证功能 📚 文档完善: - 移动端路由守卫使用指南 - 详细的变更记录和技术说明 - 最佳实践和注意事项 🎯 核心效果: 用户登录失效或未登录时,访问任何需要权限的页面都自动跳转到登录页,提升安全性和用户体验。
This commit is contained in:
1 parent
5589cba249
commit
afe3e234e9
33 files changed
+5023
-356
No files matched your search
+22
-1
@@ -91,6 +91,11 @@
|
||||
- **数据库变更** → `docs/设计文档/database/`
|
||||
- **业务逻辑变更** → `docs/业务模块/[模块名称]/`
|
||||
- **配置变更** → `docs/中间件配置/` 或 `docs/部署文档/`
|
||||
- **📱 移动端变更** → 移动端工程相关文档必须同步更新:
|
||||
- **移动端API新增/变更** → 相应的API文档必须补充移动端实现章节
|
||||
- **移动端页面开发** → `docs/开发文档/` 移动端相关文档
|
||||
- **移动端功能变更** → `docs/业务模块/[模块名称]/` 移动端部分
|
||||
- **移动端技术规范变更** → `.cursor/cursorrules-mobile.md`
|
||||
|
||||
#### 变更记录规范
|
||||
- **文件格式**: `docs/变更管理/code-adjust-record-YYYY-MM-DD-{username}.md`
|
||||
@@ -268,4 +273,20 @@ private Date updateTime; // 更新时间(含JSON格式化)
|
||||
|
||||
**📝 维护**: 拆分完成于 2025-07-01,所有原有内容完整保留
|
||||
**📁 文件**: 5个专门规范文件 + 1个主配置文件
|
||||
**🔄 加载**: Cursor自动识别和应用相关规范
|
||||
**🔄 加载**: Cursor自动识别和应用相关规范
|
||||
|
||||
# 原型文件存放规范(2025-07-01 新增)
|
||||
- 所有后续生成的原型文件(如HTML原型、交互原型等),必须统一存放在 docs/原型文件/ 目录下的相应子目录中。
|
||||
- 子目录应按端(如 web、移动端、小程序等)或业务模块分类,确保结构清晰、便于查找和维护。
|
||||
- 禁止将原型文件存放在源码目录(如 web/src、mobile/src 等)或其他非文档目录。
|
||||
- 迁移或生成原型文件时,需同步更新目录结构说明文档(如 docs/原型文件/README.md )。
|
||||
|
||||
# uview-plus 图标组件规范(2025-07-01 新增)
|
||||
- 移动端UI开发中,图标组件统一使用 <u-icon />(uview-plus 3.x 官方标准),禁止使用 <up-icon /> 或 <uv-icon />。
|
||||
- 推荐通过 easycom 自动全局注册,无需手动 import。
|
||||
- 标准用法示例:
|
||||
```vue
|
||||
<u-icon name="account" size="22" color="#b0b8c9" />
|
||||
<u-icon name="lock-open" size="22" color="#b0b8c9" />
|
||||
```
|
||||
- 图标名称请参考 uview-plus 官方文档:https://v3.uviewui.com/components/icon.html
|
||||
Reference in new issue
Block a user