Vue数据驱动表单渲染,轻松搞定form表单


Posted in Javascript onJuly 19, 2019

form-create

具有动态渲染、数据收集、校验和提交功能的表单生成器,支持双向数据绑定、事件扩展以及自定义组件,可快速生成包含有省市区三级联动、时间选择、日期选择等17种功能组件。

Github | 文档

form-create 是基于 Vue开发的开源项目,可快速生成 iviewUI 的表单元素。目的是节省开发人员在表单页面上耗费的时间,从而更专注于功能开发。使用 form-creae 可快速、便捷的生成日常开发中所需的各种表单。

下面向大家介绍一下 form-create 使用方法和生成原理

演示

生成器

如何优雅的创建动态生成一个 input 输入框。

Vue数据驱动表单渲染,轻松搞定form表单

内置了规则生成器,用来生成组件规则的助手方法,通过链式操作即可快速生成对应的组件规则。

json

使用 json 数据生成。可通过后端返回生成规则,进行渲染。

Vue数据驱动表单渲染,轻松搞定form表单

php 表单生成器,这是我的另外一个开源项目。通过php生成表单规则,前端可使用 form-create 可直接根据参数进行表单渲染。这样可以很好的做到前后端分离,同时后端也可以很简便的控制表单中的组件和字段。

动态渲染

当生成规则发生变化时,页面也会实时更新。1.5版本新增组件缓存功能,会按需对组件进行更新,很大的提升了渲染速度和性能。

动态渲染实例1

Vue数据驱动表单渲染,轻松搞定form表单

动态渲染实例2

Vue数据驱动表单渲染,轻松搞定form表单 

自定义组件

form-create 支持生成任意自定义组件,包括嵌套使用 form-create。

举例

在表单中生成一个 iview 按钮组件

Vue数据驱动表单渲染,轻松搞定form表单

生成 elementUI 组件 参考案例

Vue数据驱动表单渲染,轻松搞定form表单

使用自定义组件可提升表单的灵活性,也可以实现功能更复杂的表单。

实现原理

form-create 组件渲染/更新机制图

Vue数据驱动表单渲染,轻松搞定form表单

form-craete 动态渲染表单机制图

Vue数据驱动表单渲染,轻松搞定form表单

以上就是如何使用 form-create 生成表单生成、动态渲染、自定义组件的说明和演示,以及form-create 项目的生成原理和内部结构。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery实现的在新窗口打开链接的方法小结
Apr 22 Javascript
使用ExtJS技术实现的拖动树结点
Aug 05 Javascript
原生js与jQuery实现简单的tab切换特效对比
Jul 30 Javascript
谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
Dec 03 Javascript
如何使用AngularJs打造权限管理系统【简易型】
May 09 Javascript
json实现添加、遍历与删除属性的方法
Jun 17 Javascript
前端开发之CSS原理详解
Mar 11 Javascript
ES6中module模块化开发实例浅析
Apr 06 Javascript
JavaScript利用fetch实现异步请求的方法实例
Jul 26 Javascript
模块化react-router配置方法详解
Jun 03 Javascript
DatePickerDialog 自定义样式及使用全解
Jul 09 Javascript
Vue实现数据请求拦截
Oct 23 Javascript
VueJS 取得 URL 参数值的方法
Jul 19 #Javascript
vue自定义表单生成器form-create使用详解
Jul 19 #Javascript
bootstrap table列和表头对不齐的解决方法
Jul 19 #Javascript
JS开发 富文本编辑器TinyMCE详解
Jul 19 #Javascript
更强大的vue ssr实现预取数据的方式
Jul 19 #Javascript
bootstrap table.js动态填充单元格数据的多种方法
Jul 18 #Javascript
bootstrap table实现横向合并与纵向合并
Jul 18 #Javascript
You might like
php is_file()和is_dir()用于遍历目录时用法注意事项
2010/03/02 PHP
探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法
2013/06/06 PHP
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
PHP获取文件相对路径的方法
2015/02/26 PHP
php动态函数调用方法
2015/05/21 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
2016/01/09 PHP
laravel 获取当前url的别名方法
2019/10/11 PHP
如何利用PHP实现上传图片功能详解
2020/09/24 PHP
javascript中的循环语句for语句深入理解
2014/04/04 Javascript
jQuery遍历页面所有CheckBox查看是否被选中的方法
2015/04/14 Javascript
javascript入门之window对象【新手必看】
2016/11/22 Javascript
微信小程序顶部可滚动导航效果
2017/10/31 Javascript
js判断输入框不能为空格或null值的实现方法
2018/03/02 Javascript
vue的diff算法知识点总结
2018/03/29 Javascript
详解Vue webapp项目通过HBulider打包原生APP
2018/06/29 Javascript
解决Vue 项目打包后favicon无法正常显示的问题
2018/09/01 Javascript
详解JavaScript实现动态的轮播图效果
2019/04/29 Javascript
Vue数据绑定简析小结
2019/05/07 Javascript
ZK中使用JS读取客户端txt文件内容问题
2019/11/07 Javascript
jquery插件懒加载的示例
2020/10/24 jQuery
python中的实例方法、静态方法、类方法、类变量和实例变量浅析
2014/04/26 Python
Python中使用摄像头实现简单的延时摄影技术
2015/03/27 Python
python 实现将Numpy数组保存为图像
2020/01/09 Python
Python Spyder 调出缩进对齐线的操作
2021/02/26 Python
万得城电器土耳其网站:欧洲第一大电子产品零售商
2016/10/07 全球购物
Ancheer官方户外和运动商店:销售电动自行车
2019/08/07 全球购物
优秀员工自荐书
2013/12/19 职场文书
政协调研汇报材料
2014/08/15 职场文书
协议书范文
2015/01/27 职场文书
2016春节家属慰问信
2015/03/25 职场文书
英文诗歌翻译方法(赏析)
2019/08/16 职场文书
Nginx解决前端访问资源跨域问题的方法详解
2021/03/31 Servers
golang正则之命名分组方式
2021/04/25 Golang
pytorch查看网络参数显存占用量等操作
2021/05/12 Python
用python开发一款操作MySQL的小工具
2021/05/12 Python