低代码平台-关联表单组件逻辑整理
关联表单在本项目中是一个高度动态和可配置的组件,能够根据后台配置的业务列表和填充规则,实现从源表单到目标表单的数据映射和填充,同时支持主表和子表的复杂数据处理,适用于需要高度定制化和精确数据处理的复杂业务场景。
此组件是项目中支撑用户业务流程十分重要的一个环节,信息化维护人员通过此组件进行相关数据的获取以及数据的拉取和填充操作。
由于目前正在开发H5业务端子表嵌套填充的逻辑,PC端目前已在重构中,H5由于实现方式的不同,为避坑提前review此组件的流程:
逻辑复杂性
动态数据交互设计:
组件能够根据用户在select组件中的选择动态获取后台配置的业务列表和填充规则,这要求组件不仅需要具备与后端服务的交互能力,还需要在前端动态渲染和更新数据,显示对应的表单项。
复杂的数据映射逻辑:
后台可以配置对端表单A与本端表单B的字段对应规则,这需要组件内部实现复杂的数据映射逻辑来确保数据能够正确地从源表单映射到目标表单,涉及到深度的数据处理和算法实现。尤其是设计页的配置嵌套层级很多,导致数据映射实现复杂性提高。
子表数据处理:
组件设计中特别考虑了配置项可能包含子表的情况,并针对子表的数据处理提供了详细的逻辑,包括在主表内关联表单时的子表数据清空和填充策略。
多场景适用性:
组件设计涵盖了多种使用场景,比如关联表单在主表或子表内的不同处理方式,以及当前组件关联的是主表还是子表时的数据填充策略,需要组件具备高度的通用性和配置能力,能够适应不同的业务需求。
一些潜在问题的思考
性能问题:
由于组件需要动态获取后台配置的业务列表和填充规则,频繁的后端请求会对性能造成影响,特别是在网络条件不佳的情况下。另外,复杂的数据映射和处理逻辑也可能导致前端渲染性能下降。
复杂性导致的维护难度:
组件涉及的数据映射逻辑、多场景适应性以及对子表数据的特殊处理,都会使组件的代码结构变复杂,增加了维护的难度。对于团队新人来说,理解和修改这种复杂组件的成本相对较高。
数据一致性和同步问题:
在复杂的数据填充逻辑中,尤其是涉及主表与子表的数据交互时,如何保证数据的一致性和实时同步成为一个难点。错误的数据处理逻辑可能会导致数据不一致,影响用户体验。尤其是大部分表单涉及到金额和拨款的计算。
安全性问题:
动态获取和填充数据的过程中如何保证数据的安全性,防止数据泄露或被篡改,尤其是当数据包含敏感信息时,是非常需要重视的一个问题。
适应性和可扩展性问题:
随着业务需求的发展和变化,如何确保组件能够灵活适应新的需求?同时保持良好的可扩展性?