Files
saasshop/docs/admin-ui/ant-design-pro-mapping.md
2026-03-17 08:15:56 +08:00

4.3 KiB
Raw Permalink Blame History

Ant Design Pro 风格对齐SaaSShop总台管理落地映射

目标:在不引入 React/构建链的前提下,借鉴 Ant Design Pro 的信息层级、布局与交互模式,形成一套可复用、可测试、可持续演进的后台 UI 规范。

参考文档:

1. 我们当前的约束

  • 技术栈Laravel + Blade + 少量原生 JSpublic/js/admin.js),无构建链。
  • 交付要求:页面“无 JS 也可用”JS 只做渐进增强。
  • 治理要求:
    • 信息降噪:减少重复入口/重复大标题/重复按钮。
    • 快捷区“动作导向”:默认只放“点完能做事”的治理入口,其余下沉高级筛选。
    • 必须可测试:核心 UI 结构用 data-role + Feature Test 锁住。

2. Ant Design Pro 关键模式(抽象)

2.1 ProLayout布局

  • 顶部导航 / 侧边导航 + 内容区PageContainer
  • 统一页面标题、面包屑、右上角操作区。

在 SaaSShop 的落地:

  • resources/views/admin/layouts/app.blade.php顶部导航TopNav作为主菜单已落地
  • 页面内容区统一使用PageHeader + KPI/卡片/表格。

2.2 PageContainer页面容器

  • 标题 + 描述 + actions + tabs可选

在 SaaSShop 的落地:

  • 复用 .page-header 结构;后续可标准化为 Blade 组件(不强依赖)。

2.3 ProTable检索 + 表格 + 工具区)

  • Search可折叠
  • Toolbar批量动作/导出/创建)
  • Table列宽/固定/溢出治理)
  • Alert当前筛选条件/已选中多少条)

在 SaaSShop 的落地:

  • Filters Card<details class="filters-card" data-storage-key="..."> 作为可折叠搜索区(已在平台订单/订阅/套餐等落地)。
  • Toolbar统一 .actions + btn 系列批量动作必须“UI 禁用 + 后端兜底 + 测试护栏”。
  • Table继续推进 table-layout: fixed、不换行、溢出提示等治理护栏。

2.4 ProForm表单

  • 分组/分区Card
  • 校验提示统一
  • 提交按钮固定位置

在 SaaSShop 的落地:

  • 表单提交统一使用 data-action="disable-on-submit"(防重复点击)。
  • 表单字段逐步采用:日期 type=date、金额 step=0.01、select 选项收敛。

2.5 ProDescriptions详情页

  • 详情页以“信息块 + 动作块”组织,而不是单个超长表单。

在 SaaSShop 的落地:

  • 平台订单详情页:治理块(回执/对账/退款/同步)继续以“卡片化 + 锚点直达 + :target 高亮”维持可治理。

3. 组件化建议(不引入 React

只做“结构/样式/交互模式”的组件化,不做 React 组件。

  • LayoutTopNav、PageHeader、Content Gridtwo-col / kpi-grid
  • Card统一标题/副标题/footnote。
  • Table统一 .table-fixed / .table-actions / 空状态。
  • MiniBars / MiniChart作为“图形化 + 可点击治理”的基础图形组件。
  • Collapsible统一 <details data-storage-key="..."> + admin.js 记忆开合。

4. 实施优先级(建议)

  1. 总台 Dashboard:继续按 Ant Design Pro 的“分析页”信息层级推进(北极星→漏斗→治理入口→最近订单)。
  2. 平台订单/订阅/套餐列表:按 ProTable 模式统一“折叠搜索 + 工具区 + 表格”。
  3. 详情页治理块:按 ProDescriptions + Card 分区,把“动作”集中到清晰区域,减少长页迷路。

5. 可测试护栏(建议)

  • 所有关键结构用 data-role 标识:
    • 页面容器、卡片、快捷入口、折叠区、mini bar、关键按钮。
  • 针对“容易回退”的点,增加断言:
    • 快捷入口数量(<=7
    • 关键治理入口存在
    • back 口径不嵌套、不 escape

说明这里的“Ant Design Pro 对齐”指 对齐其布局与交互范式,不直接引入其 React 组件实现。