FormMaking --基于 vue 和 element-ui 实现的表单设计器,可以让表单开发简单而高效。

FormMaking --基于 vue 和 element-ui 实现的表单设计器,可以让表单开发简单而高效。

Autor: Palapple Date: 2020-03-04 tag: Vue, JS, React, Ant Design Pro, Formmaking

20181204.jpg

关于FormMarking调研

基本情况

基于 vueelement-ui 实现的表单设计器,使用了最新的前端技术栈,内置了 i18n 国际化解决方案,可以让表单开发简单而高效。

组件

  • MakingForm 表单设计器(基于可视化操作快速设计出表单页面,并获取到表单配置 json 数据)。

  • GenerateForm 表单生成器(根据设计器中获取的配置 json 数据,快速渲染出表单页面)。

  • 在线预览

  • 使用文档

  • 高级版本 提供了更多的组件和操作API

特性

  • 可视化配置页面
  • 提供栅格布局,并采用flex实现对齐
  • 一键预览配置的效果
  • 一键生成配置json数据
  • 一键生成代码,立即可运行
  • 提供自定义组件满足用户自定义需求
  • 提供远端数据接口,方便用户需要异步获取数据加载
  • 提供功能强大的高级组件
  • 支持表单验证
  • 快速获取表单数据
  • 国际化支持

优点

  • 快速构建表单,提供栅格布局;
  • 减少重复作业,高效完成表单和json双向转化;
  • 对于个性化定制,可以添加自定义class覆盖原来的样式,满足业务的实际需求;
  • 支持Element-ui和Ant Design-ui;
  • 提供多种api接口,对数据和字段进行操作;

缺点

  • 高级组件数量不够多;原生antd of vue 中包含57个组件,还有很多高级组件,类似card,list等等未完成;
  • 对于中台应用来说,Table,Card,Search等经常使用的组件暂时没有,等后续更新;

应用场景

Element-UI版本(实际使用图)

  • 表单生成器( GenerateForm)

https://www.v2ex.com/t/642079

  • 表单设计器 (MakingForm)

Antd版本(使用vue cli3实现)

PS

  1. antd组件版本暂时只在高级版本才有;产品正在进一步兼容antd的高级组件,提升容量;
  2. 通过跟Ant Design Pro配合Element-ui搭配完美,Antd组件兼容性待测量;
  3. 建议搭配第三方组件使用:
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的示例,演示如何使用Element UI表单和对话框制作二级弹窗: 1. 首先,你需要在Vue项目中安装Element UI,你可以使用npm命令进行安装: ``` npm install element-ui --save ``` 2. 在你的Vue项目中引入Element UI: ```javascript import Vue from 'vue' import ElementUI from 'element-ui' import 'element-ui/lib/theme-chalk/index.css' Vue.use(ElementUI) ``` 3. 在模板中添加一个按钮,点击该按钮会弹出对话框: ```html <template> <div> <el-button @click="showDialog">打开对话框</el-button> </div> </template> ``` 4. 在script标签中添加相关代码: ```javascript <script> export default { data() { return { dialogVisible: false, // 控制对话框的显示与隐藏 form: { // 表单数据 name: '', age: '' } } }, methods: { showDialog() { this.dialogVisible = true // 显示对话框 }, handleSubmit() { // 处理表单提交 console.log(this.form) this.dialogVisible = false // 隐藏对话框 }, handleCancel() { // 取消按钮的回调函数 this.dialogVisible = false // 隐藏对话框 } } } </script> ``` 5. 在模板中添加对话框组件: ```html <template> <div> <el-button @click="showDialog">打开对话框</el-button> <el-dialog title="表单" :visible.sync="dialogVisible"> <el-form :model="form" ref="form" label-width="80px"> <el-form-item label="姓名"> <el-input v-model="form.name"></el-input> </el-form-item> <el-form-item label="年龄"> <el-input v-model="form.age"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <el-button @click="handleCancel">取 消</el-button> <el-button type="primary" @click="handleSubmit">确 定</el-button> </div> </el-dialog> </div> </template> ``` 这样就完成了一个简单的二级弹窗,其中包含一个表单和一个对话框。当按钮被点击时,对话框会弹出,用户填写表单后,点击“确定”按钮提交表单数据,同时对话框被隐藏。当用户点击“取消”按钮时,对话框也会被隐藏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值