返回文章列表

基于业务组件库的低代码页面搭建:组件与 API 适配,零开发搭页面

·7 分钟阅读·#前端#低代码#组件库#页面搭建
目录 (8)

基于业务组件库的低代码页面搭建:组件与 API 适配,零开发搭页面

业务组件库与通用函数库落地之后,我们希望能进一步减少「搭一个列表页、表单页也要写一堆胶水代码」的重复劳动。于是基于现有业务组件库现有接口 API,做了一套组件与 API 一对多适配的页面搭建能力:运营或业务同学在配置界面里选组件、绑数据源、配枚举和样式,即可生成可用的页面,无需前端开发参与。数据源支持一键拉取、导入、手动添加;枚举值支持扩展;页面配置采用三列布局(左侧组件库、中间画布、右侧属性配置);同时支持模板功能——将配好的页面保存为模板,其他用户可基于模板修改内容,快速完成自定义页面配置。本文介绍整体思路与关键能力。


一、为什么做「组件 + API 适配」

业务组件库里已有表格、表单、卡片、图表等组件,后端也提供了规范的 REST 接口。但每做一个新页面,仍然要:选组件 → 写请求 → 把接口字段映射到组件的 props → 再处理枚举、分页等。这类工作重复度高、易出错,且排期依赖前端。组件与 API 一对多适配的目标是:在配置层完成「某个组件用哪个接口、哪些字段对应组件的哪些属性」,运行时由搭建引擎按配置拉数、填进组件,不再为每个页面写一层胶水代码


二、整体能力概览

  • 数据源:支持一键拉取(从现有接口文档或网关拉取 API 列表)、导入(上传 Swagger/OpenAPI JSON 或手工整理的接口清单)、手动添加(填写 URL、Method、请求/响应示例),统一管理为「数据源」,供页面里的组件绑定。
  • 组件与 API 绑定:每个放到画布上的组件可绑定一个数据源(或子路径),并配置字段映射(接口返回的 listdata.name 等映射到组件的 dataSourcetitleField 等),实现一对多(一个接口可被多个组件用、一个组件也可切换不同接口)。
  • 枚举值:在配置数据源时可设置默认枚举值(如某接口返回的 status 字段约定 0/1/2 的展示文案);组件绑定数据源后可沿用或覆盖;支持添加、编辑枚举项,回放时组件按枚举展示文案或标签。
  • 三列配置界面左侧为组件库(含统计数据、列表页面、搜索过滤组件、折线图、曲线图、饼图、文本、按钮等),中间为画布(如:顶部搜索栏、中间两个图表并排、下方一个表格),右侧为当前选中组件的配置(数据源接口、入参/出参、组件参数、绑定自定义事件;不提供样式和事件的独立配置项,而是提供组件参数供选择,并支持绑定自定义事件),结构清晰、上手快。

页面配置三列布局草图:左侧组件库(统计/列表/搜索/图表/文本/按钮等)、中间画布(搜索栏+双图表+表格)、右侧数据源与组件参数

  • 模板功能:将当前配置好的页面保存为模板(命名、可选分类),其他用户可在「从模板创建」里选择模板,打开后即为一份可编辑的副本,修改数据源、组件或布局即可完成自定义页面,无需从零拖组件。

三、数据源:一键拉取、导入、手动添加

数据源是所有「组件绑 API」的基础。我们支持三种录入方式:

方式 说明
一键拉取 从内部接口文档平台或网关拉取已登记的 API 列表,按模块/服务筛选后批量导入为数据源,保证与现有接口一致。
导入 上传 Swagger/OpenAPI 的 JSON,或我们约定的「接口清单」Excel/JSON,解析出 URL、Method、请求参数、响应示例,自动生成数据源及字段结构。
手动添加 填写接口地址、Method、入参(请求参数)、出参(响应结构,可手写 JSON 示例或从拉取结果带出);可在数据源层面配置默认枚举值,供绑定该数据源的组件直接使用或覆盖。

数据源在配置时需填写入参、出参(请求参数与响应结构),并可配置默认枚举值(如接口返回的 status 字段在数据源层面就约定好 0/1/2 的展示文案),组件绑定该数据源后可直接沿用或覆盖枚举。数据源列表统一展示「名称、URL、Method、最近使用」等,配置组件时从下拉选择即可。

数据源与模板草图:一键拉取/导入/手动添加,入参出参与默认枚举;模板列表与保存为模板


四、组件与 API 的一对多适配

  • 一个接口多组件:同一数据源(如「用户列表接口」)可被多个表格、卡片、图表组件绑定,每个组件配置自己的字段映射(如表格用 list、图表用 list 聚合后的统计),互不干扰。
  • 一个组件换接口:同一类组件在不同页面可绑定不同数据源,只需在配置里切换数据源并改字段映射,无需改代码。
  • 实现方式:画布上的每个组件实例保存 dataSourceIdfieldMapping(接口路径 → 组件 prop)。运行时搭建引擎根据当前页面配置,请求对应接口,按 fieldMapping 把结果填到组件 props,组件库无需为「接哪个接口」写死逻辑,只消费标准 props。

这样,无需开发工作即可完成「选组件 → 选接口 → 配映射」的页面搭建,新页面只需配置、不占排期。


五、枚举值支持添加

列表中「状态」「类型」等字段往往需要展示为文案或标签,而不是原始 0/1/2。在配置侧我们支持:

  • 为任意绑定字段添加枚举:选择字段后,在右侧配置区增加「枚举」配置项,可添加多条「值 → 展示文案」。
  • 枚举与数据源解耦:同一数据源在不同页面可为同一字段配置不同枚举(如 A 页用「启用/禁用」、B 页用「是/否」),满足多业务展示需求。
  • 回放时组件根据当前字段值与枚举配置渲染文案或 Tag,无需在组件内写死。

六、三列布局:组件库、画布、属性配置

页面配置界面采用三列布局,降低学习成本、提高操作效率:

  • 左侧(组件库):展示可选组件,包括统计数据列表页面搜索过滤组件折线图曲线图饼图文本按钮等;拖拽到中间画布即可添加实例。
  • 中间(画布):所见即所得,展示当前页面布局(例如:顶部搜索栏、中间两个图表并排一列、下方一个表格);支持拖拽排序、删除、点击选中;选中后右侧显示该组件的配置项。
  • 右侧(属性配置):展示数据源接口(下拉选择已录入数据源)、入参/出参(实则在配置数据源时已维护,此处可查看或覆盖)、组件参数(该组件暴露的可配置项供选择,如分页大小、是否显示序号等);不提供独立的「样式」「事件」配置项,而是通过组件参数表达展示与行为,并支持绑定自定义事件(如按钮的点击、表格的行操作,绑定到预置或自定义事件名,由运行时注入实现)。枚举可在数据源默认值基础上按组件覆盖。

这种布局与常见低代码/搭建产品一致,用户完成「从左侧拖组件(统计/列表/搜索/折线图/曲线图/饼图/文本/按钮等)→ 中间摆布局(如搜索栏 + 双图表 + 表格)→ 右侧选数据源与组件参数、绑自定义事件」的流程。


七、模板功能:保存与基于模板创建

  • 保存为模板:用户在画布上配置好页面(组件、数据源、字段映射、枚举、布局)后,可点击「保存为模板」,填写模板名称与可选分类,当前配置即存为一份模板。
  • 基于模板创建:新建页面时可选「从模板创建」,在模板列表中选择已有模板,打开后即得到一份可编辑的副本(不影响原模板);用户只需修改数据源、组件或枚举等内容即可完成自定义页面配置,无需从空白画布重新拖组件。
  • 模板适用于「列表页」「表单页」「仪表盘」等常见形态,沉淀后能显著减少重复配置、统一风格。

八、小结

  • 基于业务组件库现有接口 API,通过组件与 API 一对多适配(选数据源 + 字段映射),实现无需开发即可完成页面搭建
  • 数据源支持一键拉取、导入、手动添加,配置时填写入参、出参及默认枚举值页面配置为三列布局(左侧组件:统计/列表/搜索/折线图/曲线图/饼图/文本/按钮等;中间画布:如搜索栏+双图表+表格;右侧:数据源接口、组件参数、绑定自定义事件,不提供独立样式与事件配置);模板功能支持保存为模板、基于模板修改完成自定义页面。
  • 以上能力均在配置层完成,不要求业务组件库为「接哪个接口」写死逻辑,便于与现有技术栈和接口规范共存,并可持续扩展组件与数据源类型。