# g2rain-app-template(子应用模板项目)

g2rain-app-template 是基于 Vue 3 + TypeScript + Vite + qiankun + Element Plus 的微前端子应用模板,支持:

  • 独立运行(本地或单应用模式)
  • 作为 qiankun 子应用被主应用加载

# 项目目录结构(核心分层)

  • platform/(平台层)
    • boot/:启动模块(resource.ts 资源管理、router.ts 路由生成、permission.ts 权限控制等)
    • event/:子应用与主应用事件系统
    • stores/:Pinia 状态管理(含 token store)
  • runtime/(运行时层)
    • auth/:SSO 认证服务
    • env/:环境变量管理
    • http/:HTTP 客户端与拦截器(含 Mock)
    • qiankun/:qiankun 集成
    • sign/:DPoP 签名能力
  • shared/(共享层)
    • config-util/:从源码生成资源配置(JSON)
    • generator/:代码生成器(View / API / Mock / Type 等)
  • views/(视图层:开发主要发生在此)
  • lua/nginx/:用于应用签名与部署配置

# 快速开始

npm install
npm run dev

默认开发地址:http://localhost:3001

# 代码生成(生成 View / API / Mock / Type)

npm run build:generate -- --tables=dict

# 配置生成(生成后端资源配置 JSON)

用于从现有代码提取资源配置(页面、页面元素、API 端点):

npm run build:config

# 环境变量(.env 示例)

  • VITE_APPLICATION_CODE:应用编码(必填,关系到资源接口动态加载)
  • VITE_CONTEXT_PATH:上下文路径(必填)
  • VITE_BACKEND_ORIGIN:后端服务地址(示例 http://localhost:8080
  • VITE_IAM_BACKEND_ORIGIN:IAM 后端地址(示例同上)
  • VITE_SSO_BASE_URL:SSO 基础地址
  • VITE_AUTH_END_POINT:认证端点路径(示例 /auth/authorize
  • VITE_REDIRECT_URI:SSO 回调路径(示例 /sso_callback
  • VITE_TOKEN_END_POINT:Token 端点路径(示例 /auth/token,按模板要求)
  • VITE_MOCK_ENABLED:是否启用 Mock

注意:VITE_APPLICATION_CODE 用于从资源接口动态加载路由与权限配置;如果未配置,将回退到静态路由配置。