跳转到内容

弹窗组合模板设计文档

当前页面只能把区块逐个保存和逐个插入。当一个弹窗页面由筛选区、列表区、详情区和操作区等多个区块组成时,重复配置成本较高,也容易漏掉区块之间的布局关系。

本方案增加“组合模板”,允许用户把当前弹窗页面中的多个区块及其布局保存成一个整体,之后在其他页面一次性使用。

组合模板归入现有的“弹窗模板”统一管理,继续使用系统现有的 flowModelTemplates 模板库保存,不新增模板数据表,也不新增独立的设置入口。

组合模板不新增独立的 settings 入口,也不在UI模板 的 UI 模板页签中增加新的 Tab,而是放入现有的“弹窗模板”中统一管理。

在“弹窗模板”列表中,组合模板和普通弹窗模板共用列表、查看、编辑和删除操作。组合模板通过名称、说明和内容预览进行识别。

组合模板继续保存到 flowModelTemplates,不新增模板主表。

一个组合模板在模板库中对应一个整体模板记录,模板内容包含多个区块以及这些区块的排列关系。组合模板按“弹窗模板”类型保存,并在现有模板信息中保留“组合模板”标识,由本插件在创建区块时按标识读取组合内容。

模板的具体内容仍由现有 FlowModel 模板机制保存和加载。组合模板需要在现有机制上支持“一次加载多个区块”,不能把多个普通模板名称简单拼接在一起。

在弹窗页面的设计状态下,页面右上角增加“组合为模板”按钮。按钮是否显示由“界面配置开关”控制,开关关闭时不显示。

点击按钮后,从右侧打开抽屉,不离开当前页面。抽屉展示当前弹窗页面中的可选区块,例如筛选区、列表区、详情区和操作区。

用户可以:

  • 查看区块名称、类型和所在位置;
  • 全选或取消选择;
  • 查看已选区块的顺序和布局预览;
  • 看到数据源、关联字段等可能影响复用的提示;
  • 填写模板名称和说明;
  • 选择复制或引用方式。

至少选择一个区块后才能保存。系统按照当前页面的顺序保存,不允许保存后自动改变区块位置。

进入UI模板 中的 “弹窗模板” 模块即可查看组合模板。组合模板与普通弹窗模板共用现有列表,使用现有列表支持的内容和操作:

  • 模板名称;
  • 模板说明;
  • 数据源和数据表信息;
  • 引用数量;
  • 查看、编辑和删除操作。

为便于在同一列表中识别组合模板,模板名称或说明中应明确标注“组合模板”。

在页面、公共弹窗和新增弹窗的“其他区块”中增加“组合模板”入口。该入口只展示组合模板,不替换原版模板入口。

选择器支持:

  • 搜索模板;
  • 查看模板说明和包含的区块;
  • 查看当前页面是否适用;
  • 对不可用模板显示原因;
  • 选择复制或引用;
  • 一次性插入完整组合。

复制会根据模板生成一套独立区块。之后修改当前页面的区块,不会影响模板或其他页面。

适合临时复用布局,或不同页面需要分别调整的情况。

引用会让当前页面与模板保持关联。模板调整后,所有引用它的页面都会受到影响。

适合多个页面需要长期保持相同布局,并由专人统一维护的情况。

引用前显示影响说明和当前引用数量。修改、解除引用或删除有引用的模板时,需要二次确认。

  1. 打开弹窗页面的设计状态。
  2. 确认“界面配置开关”已开启。
  3. 点击右上角“组合为模板”。
  4. 在抽屉中选择需要保存的区块。
  5. 查看布局预览和复用提示。
  6. 填写名称、说明并选择复制或引用。
  7. 确认保存。
  8. 保存成功后,可以在 UI模板 的“弹窗模板”模块和创建区块的“组合模板”入口找到该模板。
  1. 在目标页面打开创建区块菜单。
  2. 进入“组合模板”。
  3. 搜索并选择模板。
  4. 查看适用性提示和包含的区块。
  5. 选择复制或引用。
  6. 确认后一次性插入全部区块。
  1. 进入UI模板 的“弹窗模板”模块。
  2. 查看模板列表、区块数量和引用数量。
  3. 查看或调整模板内容。
  4. 修改名称、说明或删除模板。
  5. 删除有引用的模板时,先确认对现有页面的处理方式。
  • 组合模板保存的是区块结构、布局和配置,不保存业务数据。
  • 只能选择当前弹窗页面中的顶层业务区块,空行和空列不作为独立区块保存。
  • 一个组合模板可以包含多个区块,也可以包含不同类型的区块。
  • 如果区块依赖未选择的区块、数据源或关联字段,系统在保存或插入前明确提示;无法保证正常运行时禁止继续。
  • 插入必须作为一个完整操作完成,失败时不能只留下部分区块。
  • 原版区块模板和弹窗模板继续使用原有入口和数据,不因新增组合模板改变行为。
  • 组合模板与普通模板共用 flowModelTemplates,但必须通过模板类型区分展示和使用范围。
  • 首版只支持桌面端弹窗页面,移动端另行评估。

以下情况需要明确提示,并保留用户当前选择:

  • 当前页面没有可保存的区块;
  • 未选择任何区块;
  • 模板名称重复或不符合命名要求;
  • 数据源、关联字段或前置能力不可用;
  • 模板包含无法安全复用的配置;
  • 保存、加载或插入过程中网络失败;
  • 删除模板时仍存在引用页面。
  • 通过“界面配置开关”控制是否显示“组合为模板”按钮;开关开启后,符合页面范围的用户可以看到并使用该功能。
  • 没有数据、正在加载或加载失败时,分别显示明确提示。
  • 引用和复制必须同时显示文字说明,不能只用颜色区分。
  1. 在界面配置开关开启时,弹窗设计页面显示“组合为模板”按钮;关闭时不显示。
  2. 可以选择当前页面的多个区块,并保留原有顺序和布局。
  3. 保存成功后,模板出现在UI模板 的“弹窗模板”模块中。
  4. 创建区块时可以从“组合模板”入口找到已保存模板。
  5. 插入后区块数量、顺序和布局与模板一致。
  6. 复制模式下,修改实例不会影响模板和其他页面。
  7. 引用模式下,模板修改能够影响所有有效引用实例。
  8. 保存或插入失败时,不产生残缺模板或半套区块。
  9. 原版区块模板和弹窗模板的创建、使用、编辑和删除不受影响。