vue form表单开发快速模板vue-form-marking

工具地址:http://tools.xiaoyaoji.cn/form

GitHub地址:https://github.com/GavinZhuLei/vue-form-making

线上地址: http://49.233.133.108:8080/#/

from marking 模板分2个模板
一个模板是 fm-generate-form 用于展示从后端获取的json的数据
一个模板是 fm-making-form 用于拖拽生成json数据模板

form-marking 模板必须跟element-ui框架一起使用,其中包括拖拽的各种组件实际上是element的组件,包括筛选是否符合,都是调用了elementui的rules规则判断,包括最小值和最大值,正则,是否必填的判断

<fm-generate-form :data="jsonData" :remote="remoteFuncs" :value="editData" ref="generateForm">
</fm-generate-form>

其中jsonData 是表单配置中生成的json数据,后端数据放入这个参数里,用于渲染生产form表单

editData 里放的是表单需要显示的表单数据,即表单初始化显示的初始值,以对象的形式放入,key值中input的model值。例如editData: {input_1554173787000_79900: "123"},

remoteFuncs 组件配置时配置的远端方法,保持和配置时输入的名称一致,具体方法名,可从jsonData中获取到remoteFunc的value中获取 ,可用于改变单选或者多选的默认value值,

具体改动value可以通过jsonData里props的值获取,这个一般用于获取后端参数后异步渲染value值。

当点击提交按钮时,可通过ref去调取目标模板是否校验完成 this.$refs.generateForm.getData().then(data => {// 数据校验成功// data 为获取的表单数据}).catch(e => {// 数据校验失败})

vue-form-marking控件使用方法

控件实际上是调用的element-ui框架里的组件库,当需要添加新的控件时,首先要在componentsConfig.js里去声明组件类型,包括type,name,icon以及options 其中type里是element-ui组件名,name是展示在左侧字段名字,icon是展示图标
图标是调用的vue-awesome组件库,需要用时,需要在Container.vue里important导入,方可使用。option是对这个控件做限制处理以及初始化处理具体可参考element-ui组件参数,然后需要去
WidgetFormItem.vue里添加控件模板,即拉取左侧图片到中间后,展示内容。具体写法类似于element-ui里的组件写法,没什么难度,最后只需要在GenerateFormItem.vue添加组件,这个主要是展示使用。也是最重要的一步,你所拉取的内容最终都会在这个vue里显示出来,这就是整个组件拉取的步骤。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 表单处理 一般情况表单需要具有几个功能: 每一个输入字段都需要有独立的校验规则 如果用户输入不符合校验规则,就会在...
    2764906e4d3d阅读 2,542评论 0 2
  • React中没有类似Angular那样的双向数据绑定,在做一些表单复杂的后台类页面时,监听、赋值、传递、校验时编码...
    tedyuen777阅读 9,901评论 1 23
  • 前言: 在日常使用vue开发WEB项目中,经常会有提交表单的需求。我们可以使用 iview 或者 element ...
    ZhengJX阅读 13,011评论 0 6
  • 懒洋洋的不想起,估计昨天是累到了,跑了五公里,感觉压力是比较大的,但是醒来第一件事儿就是摸摸自己的肚子,捏捏后背的...
    刘鲨鱼阅读 374评论 0 0
  • 今天运动会,宝今年有幸成为运动员。中午接出来就不高兴,问她咋了说没劲决赛。我就问她,班级选拔时就刚刚够条件,这点心...
    Acumey阅读 119评论 0 0