首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

表单联动解决方案探讨

表单联动”是前端开发中的经典场景。本文对于表单联动问题的解决方案进行一个简单的探讨。 表单依赖关系的建模 表单联动是前端经常面临的问题,联动实际上是一组表单项和表单项之间的依赖关系的集合。...比如经典的“省-市-区”三级联动,就包含了“省”、“市”、“区”三个表单项,以及“市->省”和“区->市”。...在监听到表单项的更新之后,拷贝一个表单的草稿,按照更新队列的顺序更新草稿,再整体更新表单。比如(React DEMO): import produce from 'immer'; // ......产生这种问题的原因,就是表单在初始情况下的依赖关系不明确,各个表单项处在一个全部可选的状态。...只有当该表单项的所有依赖项都确定了取值之后,才能更改。 在开始时明确指定依赖关系,并给出一个表单的默认值。此时表单的状态成为状态机中的某个具体状态节点,就不会产生混沌不清的依赖关系。

3.1K10
您找到你想要的搜索结果了吗?
是的
没有找到

vue动态生成表单_vue element 表单验证

前几天接了一个需求,需要动态生成一个表单数据,然后提交,提交完数据后。通过编辑按钮进入时,需要进行数据回填。 一、页面展示: I....没生成表单前的状态 Vue-UEedit UEedit II. 单机生成表单生成表单 III. 根据选择方式展示不同的表单元素 IV....进行数据回填 样式同第三点相似,这里不再说明 二、思路: 请输入标题,请选择类型 为父组件;请选择方式 为子组件;根据请选择方式出来的内容为孙子组件, 单选和下拉下面的生成参数是从孙组件 三、难点: 动态生成数据...、数据多层传递(四层数据向下传递+四层数据向上传递)、数据格式转换、数据清空、 数据关联、数据解耦、空白表单数据添加、 含原始表单数据添加、表单数据删除、非响应式数据处理、 合并表单数据(判空+去重...countPage: 0, //输入需要生成表单的个数 createFormObj: { }, //存放每一个生成表单对象 createFormArray: [], //生成表单所有生成对象的数组

2.5K30

基于 el-form 封装一个依赖 json 动态渲染的表单控件 定义接口,统一规范封装各种表单子控件定义属性定义内部model实现多行多列和布局调整实现扩展实现数据联动实现组件联动

依赖 json 动态创建表单 可以多行多列 可以调整布局 可以自定义子控件(插槽和动态组件) 可以扩展表单子控件 数据验证 数据联动 组件联动 依据 json 自动创建 model 功能演示 介绍代码之前先看看效果...使用动态组件 插槽的方式虽然灵活,但是不便于复用,如果需要在多个地方使用的话,可以先做成一个组件,然后用动态组件的方式加入表单。 ?...这里使用动态组件的方式加入了 element 的穿梭控件,也可以加入其它各种组件。 数据验证 可以直接使用 el-form 提供的验证功能,在json里面设置好验证规则即可。 ?...我们使用 component 和动态组件来实现表单子控件的加载。...格式 整个表单是依据 json 动态渲染出来的,那么json格式是啥样的呢?

1.5K30

动态表单表单组件的插件式加载方案

本文首发于政采云前端团队博客:动态表单表单组件的插件式加载方案 https://www.zoo.team/article/dynamic-form-loading-method ?...前言 关于动态表单方案前面我们已经有过一次分享,没看过的同学可以看下之前的文章 ZooTeam 拍了拍你,来看看如何设计动态表单。...文章中提到随着业务差异化增多,我们采用了动态表单解决重复开发及逻辑堆叠的问题。随着动态表单系统运行过程中业务方接入的越来越多,自定义组件插件式加载的需求开始出现并慢慢变得强烈。...考虑到后期动态表单页面转本地代码的需求,希望插件还能被 npm 安装使用。这里采用了 UMD 规范。 方案选取 一、加载资源的方案 采用动态插入 Script 方式实现 JS 资源加载。...组件插件式引入的方式解决了,但是又引入了一个新的问题,一个表单页面如果有 10 个自定义组件的话,是不是就得动态加载 10 个静态资源呢,如果每个组件都有一个 JS,一个 CSS。

2.4K40

使用 JSON 格式来定义 Flowable 外置表单

---- 在前面的案例中,我们定义的表单使用了 HTML,实际上这个表单不仅可以使用 HTML,也可以使用 JSON 来定义表单,可能也有不少小伙伴在网上已经看到过一些使用 JSON 来定义表单的案例,...今天这篇文章松哥就来和大家分享一下如何使用 JSON 来定义 Flowable 表单。...默认规则 使用 JSON 来定义 Flowable 表单,我们刚好可以利用 Spring Boot 中的默认机制,即将表单文件置于 classpath:forms 目录下,那么在系统启动的时候,表单文件就会被自动部署...不过对于默认的表单文件位置和表单文件后缀,我们也可以通过在 application.properties 配置文件中添加如下内容进行修改: # 默认的表单文件后缀 flowable.form.resource-suffixes...,当有多个表单的时候,这个该值不可以重复,name 是表单是名称,fields 则定义了具体的字段,这里一共有四个。

98320

Vue + Element ui 实现动态表单,包括新增行删除行动态表单验证提交功能

总结/朱季谦 最近通过Vue + Element ui实现了动态表单功能,该功能还包括了动态表单新增行、删除行、动态表单验证、动态表单提交功能,趁热打铁,将开发心得记录下来,方便以后再遇到类似功能时,...简化的页面效果图如下: 最开始,我是用了纯粹的表格形式,后来发现,这种形式在提交的时候,不好对每个输入框做校验,若是表单形式话,就可以直接通过rule设置每个输入框的验证,因此,我就在表格里面嵌套了表单...el-button size="mini" @click="resetForm()">重置 定义一个存储动态表格数据的数组变量...$refs["data"].validate(valid => { //valid为true,表示表单都已经验证通过,若为false,说明存在表单验证失败 if (valid...--表格里面嵌套表单--> <el-form-item :prop="scope.

2.9K20

建模与表单动态化设计

所有动态化,有两个角度,从产品运营人员的角度,处于流程中的表单可能随时需要调整一些策略,例如字段的限制,或者某些字段的增删;从开发人员的角度,我们不能用代码限定死表单及其囊括各方面的内容,而是需要在前后端配合下...动态建模 对于表单而言,我推崇先建模,当然,建模并不只适用于表单场景,任何场景都适用,只是需要考虑成本。但在建模时,我们往往需要去思考,在业务层面,我们需要什么,在交互层面我们需要什么。...设计动态DSL语言 我们不是要发明一门编程语言,我们是要解决动态表单过程中,如何让描述文本具备更深的动态含义。解决眼前的问题,有利于我们减少瞎想乱想的可能性。...动态表单 对于产品化的动态表单而言,我们应该让用户进到产品里时,就可以立即进行表单设计。在表单设计过程中,再让用户来细化字段。...解决复杂问题 在实现动态化配置中,我们会面临几个非常复杂的问题,包括但不限于:字段的某些属性是根据其他字段的值动态得到的,应该怎么配置?怎么实现表单中可添加删除的列表数据?

2.5K11

干货 | 携程动态表单DynamicForm的设计与实现

实现阶段2:动态表单1.0 乐高表单第二版使用的是半自动化表单,支持动态配置表单控件类型和表单校验等。 配置面板如图: 此版本的表单不支持可视化拖拽,控件自上而下顺序排列。...可联动:某个控件可以控制别的控件的显示和隐藏 支持复杂数据类型:支持对象结构以及对象数组结构等复杂数据类型(JSON)的配置 三、架构 DynamicForm架构设计的目的是降低表单的维护成本、降低开发人力...,解决表单开发中常见的联动、校验、自定义展示等问题。...动态表单一个比较重要的点是需要解决JSON可视化配置,为此表单也开发了table列表式的JSON列表组件,子项的配置就基于嵌套表单实现配置字段,并且能够增删改查条目,excel导入,导出数据。...其他复杂数据类型配置,如["a","b"]和["a","c"],表单提交数据结构即为{a:{b:"",c:""}} 另外一个功能点是解决动态属性间的联动问题,为此表单通过配置联动表达式解决了控件联动问题

2.2K20
领券