首页 > 其他分享 >动态表单是什么?如何开发?

动态表单是什么?如何开发?

时间:2024-03-07 17:36:52浏览次数:30  
标签:通过 代码 配置 表单 开发 UI 动态

在开发表单时常见的有两种做法:一种是通过配置代码的方式,而另一种则是通过组件组合的方式。通过配置代码生成的表单,我们称之为动态表单(Dynamic Form),而通过组件组合生成的表单,我们称之为普通表单。 ​

对于动态表单来说,我们只需要定义一套统一的配置模板,之后新增表单或者输入项时,只需要修改配置文件即可,十分简单便捷。与组合的方式相比也少了许多重复的 HTML 模板代码。

生成动态表单的配置代码(一般就是一个大json),一般来说会存储在后端,并通过 API 提供给前端使用。也可以将配置代码存储在前端

小结

说了这么多,最后让我们再来总结一下动态表单的适用场景以及选择动态表单应该考虑的问题:

  1. 动态表单适合拥有大量相似表单需求的场景:输入控件的类型比较固定,UI 和布局相对统一。这样方便定义 Schema,并通过简单循环直接生成表单
  2. 选择动态表单不应该只从技术角度去决策,还需要考虑业务需求和 UI 设计。不要只为了几行重复的 HTML 代码就选择动态表单方案,要知道有些重复是「必要的」,错误选择动态表单方案反而会降低你的开发效率
  3. 一旦敲定了动态表单方案,灵活性方面就应该做出一些妥协,不再接受千变万化的 UI 设计。这一点要开发、业务、设计多个角色沟通配合
  4. 不要通过配置文件配置特别细节的 CSS 样式。你可以封装一些固定的样式,比如两列布局/三列布局,然后通过配置项去切换。

参考

动态表单(1)—— 别再滥用动态表单了

【vue系列】优雅地用 vue 生成动态表单(一)

 

 

标签:通过,代码,配置,表单,开发,UI,动态
From: https://www.cnblogs.com/kunmomo/p/18059371

相关文章

  • APP开发好后如何快速进行内测分发
    在APP开发过程中,内测是非常关键的一环。内测不仅能够帮助开发团队发现潜在的问题,还能确保应用在正式上线前具备良好的用户体验。那么,APP开发好后如何快速进行内测呢?今天,我将为大家分享一些实用的经验和建议,并带大家了解虾分发平台xiafenfa.com,它将成为您APP内测的强大后盾。首先,......
  • QQ 测试 AI 聊天搭子,再战 AI 社交;零一万物宣布开源 Yi-9B 模型丨 RTE 开发者日报 Vol.
      开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(RealTimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑的个人观点......
  • day57 动态规划part14 代码随想录算法训练营 53. 最大子数组和
    题目:53.最大子数组和我的感悟:理解难点:递推公式想错了。听课笔记:我的错误的代码:通过截图:代码易错点:老师代码:扩展写法:资料:......
  • 关于安卓开发远程连接mysql数据库2
    安卓开发远程连接数据库方式2:通过发送请求到web中间层实现对数据库的增删改查操作。第一步需要给安卓程序添加上网络权限,在安卓项目中的配置文件中加上代码<uses-permission android:name="android.permission.INTERNET"/>语句用于获得访问网络的权限第二步添加Retrofit+GSON......
  • day57 动态规划part14 代码随想录算法训练营 1035. 不相交的线
    题目:1035.不相交的线我的感悟:换汤不换药理解难点:换了个壳子听课笔记:多理解这个题意我的代码:classSolution:defmaxUncrossedLines(self,nums1:List[int],nums2:List[int])->int:#因为强调顺序,所以跟1143最长公共子序列是一样的dp......
  • day57 动态规划part14 代码随想录算法训练营 1143. 最长公共子序列
    题目:1143.最长公共子序列我的感悟:你永远不知道自己有多厉害!加油!理解难点:递推公式如何想,通过图,来记忆。听课笔记:我的代码:classSolution:deflongestCommonSubsequence(self,text1:str,text2:str)->int:#假设text1为内层,text2为外层n......
  • 红外线测温枪pcba技术开发方案
    测温枪(红外线测温仪)针对量测人体额温基准设计,使用非常简单、方便。1秒可准确测温,无镭射点,免除对眼睛之潜在伤害,不需接触人体皮肤,避免交叉感染,一键测温,排查流感。适合家庭用户、宾馆、图书馆、大型企事业单位,也可以用于医院、学校、海关、机场等综合性场所,还可以提供给医务人员......
  • 资产管理开发与使用过程记录
    资产管理开发与使用过程记录博客园:www.cnblogs.com/sky-just...资产管理系统添加流程控制功能,同一时间只能存在一个进行中的流程,为简化流程审批过程,优化事项如下:在流程中增加空节点“处理过程”,该节点结束之后,表示流程结束,可以发起下一次流程变更‍......
  • 记录一个使用mysql查询表单,多个参数.
    publicDataTableQueryData(SearchViewModelmodel){DataTabledt=newDataTable();/把'删除掉,在编写文档时,不加个',MySqlParameter显示不出来/List<'MySqlParameter>param=newList<'MySqlParameter>();model.inputMonths=model.inputMonth......
  • C++语言代码开发示例-身份证实名认证接口
    实名认证API实时联网核验个人身份信息与所持身份证件人员的一致性,可满足不同应用场景的不同实名认证需求,如身份证号+姓名核验、身份证号+姓名+人像核验、身份证号+姓名+证件人像+现场人像核验等,有助于推动诚信网络环境建设,降低利用网络进行违法犯罪的可能性,防止纠纷和诈骗,确保消费......