[源码分享]开源的自定义表单设计器源码

  • 时间:
  • 浏览:2056
  • 来源:无双科技

自定义表单设计器,这是一个现代化应用中一个加分的模块,目前很多大型的系统都会存在很多表单,针对不同的客户,可能表单都会不一样,而且不够灵活,可能针对不同的场景都得去定制化的开发很多不一样的表单,因此现在很多大型应用程序都提供了自定义表单的功能,今天就为大家介绍一些在github上发现的比较符合需求的基本实现,需要自己配合后台,但是最难的部分,也就是前端设计器的部分基本上不需要动,一起来看一看!


开源项目首页

笔者在接到项目要求后,在github上找了很久,也有好几个版本,现在全部都贡献出来,以便于大家参考,其中包括了PC端和移动端(分开的并不是集成在一起的,有点遗憾),有一些虽然开源,但是收费这里就不介绍了,下面是相关地址:

1、https://github.com/wxjaa/ddvue(Vue+移动端)

2、https://github.com/xiedajian/dingding(jQuery+移动端)

3、https://github.com/chrunlee/formdesigner(jQuery+移动端)

4、https://github.com/wxjaa/dingding(jQuery+移动端)

5、https://github.com/mrabit/vue-formbuilder(Vue+PC)


笔者是在第一个Vue版本的基础上修改的,其实大部分代码不需要修改,不过需要自行整合金自己的项目,可以根据自己的需求进行整合


项目介绍

因为笔者使用的是第一个,因此就直接拿第一个进行简单的介绍,遗憾的是没有找到React和Angular版本的,可以根据需要自行选择。

  • 1、项目结构

大致的项目结构如下,这只是一个基础的脚手架项目,因为开源的时间较长,脚手架使用的不是最新版,不过这不是重点:

92bda2442cac4b1499b82839400fcf51.jpg

2、组件部分

b7f46e0556cb4c22a8411111ceb94f81.jpg

这部分主要就是自定义的一些控件部分,像文本框、下拉框等的渲染部分都在这里,对应如下部分

002594bf57454a53b6f4977141b69e16.jpg

  • 3、中间界面部分

也就是进行拖拽后的表单容器

2f8d1518d5d7495992f34207bec9e384.jpg

4、设置部分

92b6950a05d44f4684ff9d3d455faf93.jpgf093106bb0314193881312174af4bb44.jpg

整个项目也就分为大致这几个部分,由于笔者刚刚接触Vue不久,有些地方也可能存在理解不到位的地方,这里就不在过多介绍,另外还包括头部和按钮部分,整个界面的核心就是中间的设计器部分,有需要的朋友自行修改即可,其中控件当中包含的明细,相信是大家需要的!

  • 5、开发

首先先克隆或者下载下来源代码:

# 安装依赖
npm install

# 启动服务
npm run dev

# 构建打包
npm run build

PC版的大致预览

可实现自定义表单控件,可拖拽排序,自定义属性由于这部分笔者还没有用到,因此简单的一起来看看效果

141a83cfd1b641fd99c6470193beb2fc.gif

c1c0afa8f09b46d1b022a61b694f16ab.gif


总结

对于智能表单设计器,笔者目前也正在摸索如果能够实现的更好,以上的案例都提供了非常不错的思路,非常感谢开源的作者们,如果你也有同样的需求,可以参考以上几个!

猜你喜欢

Navicat 15 激活码终结无法使用解决方案及激活教程

Navicat 15 激活码终结无法使用解决方案及激活教程

最新版的NavicatPremium15已经发布了是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到MySQL、SQLite、Oracle及

2023-10-20

宝塔Apache环境设置url路径不区分字母大小写

宝塔Apache环境设置url路径不区分字母大小写

Linux服务器的大小写敏感有时候很不方便,在地址栏里一定要输入准确的URL才能访问,对搜索引擎和用户不是很友好,那么如何解决LINUX服务器URL的大小写问题今天同步碰到一个

2022-10-12

Nginx配置规则错误:unknown log format "main"

Nginx配置规则错误:unknown log format "main"

网站配置由apche换成nginx系统后,重启时出现错误提示Nginx配置规则错误:nginx:[emerg]unknownlogformat"main"in/www/serv

2022-10-12

thinkphp上线后 /captcha 验证码无法加载显示

thinkphp上线后 /captcha 验证码无法加载显示

ThinkPHP的验证码在本地就OK的显示正常,一上线就不显示也没有报500错,GD库安装正常线上错误显示结果为:找到你的验证码的控制器具体文件路径(下面是我的)vendor/

2021-09-28

怎样把抖音视频链接发到网站上去

怎样把抖音视频链接发到网站上去

抖音现在很火,很多朋友都知道手机能够看抖音视频和上传视频,但是如何把抖音视频加入到网站上来,接下来一起来看看吧:我们在抖音APP里,打开某一条视频,点击右侧下方的分享小图标,然

2021-09-19