candys-tool 中后台前端页面配置化引擎

2,218 阅读3分钟
candys-tool是基于react开发的中后台前端页面配置化引擎工具。
其主要功能是实现页面的可视化配置化开发,只需要处理页面字段,以及业务逻辑,无需代码开发。工具中的各种模版引擎会处理好页面的数据交互以及人机交互。
工具支持页面配置模式和手动开发页面模式。目前工具支持的模版有列表页查询模版,复杂型表单页,页面聚合等常用模版。配置出的页面修改发布后可实时查看效果,不用重新打包发布前端项目,实现灰度发布。
工具原理:首先开发页面模版,暴露出可配置的属性。开发者创建页面实例,进行配置,然后将配置的页面数据保存到库里。在预览模式下,从接口读取页面配置,前端模版引擎会将其解析成页面。以下是简单的介绍功能,具体详细的使用方法以后会更新使用手册出来。

配置出的列表页面

配置出的表单页面

页面编辑模式

表单元素与校验

目前支持的表单元素包括:input,select(选项支持写死,支持从接口获取,需要配置),radio,datapicker,checkbox,textArea,InnerText, tagRadio,FileUp,Image,ImageArr,NumFormPart,SelectTablePart,LookBack,DynamicNumFormPart。目前先不一一介绍。

表单支持的校验方式

目前支持对表单的数据校验方式包括:必填,数字,百分比,手机号,自定义正则

表单全局校验(多个表单直接的值校验)

可配置校验全局表单
思路:多表单校验, 表达式校验, 新建公式,因子选择,影响到的因子
满足以下场景:
1\. 因子们满足一定的规则,去控制 值因子是否显示, 调用接口, 赋值(change时触发)
2\. 因子们进行值运算,去赋值给 值因子 (change时触发)
3\. 因子们进行值运算,与指定因子的值的比较(大,小,等于某值)(change时触发)
4\. 因子的值 与 指定因子的值的比较(大,小,等于某值)(提交时触发)
5\. 当指定因子满足规则时,被动因子必填,或者满足规则(提交时触发)
交互操作:
选择主动因子(多个)
选择被动因子(多个)
校验方式 因式 or 规则
因式模式
因式录入 因子1 公式 因子二 公式 因子三 a + b < c
公式校验 第一个和最后一个类型不能为公式
触发方式 onChange触发(提交时触发)
交互类型 valid(校验) action toValue(赋值给被动因子, 选择赋值时 不能出现比较符号)
规则模式
规则录入 主动因子规则录入 被动因子 交互类型 (是否显示, 调用接口, 初始化接口)
触发方式 onChange触发

表单onChange联动

可配置联动的表单的方式:

1、控制联动表单显示隐藏,可以配置显示规则,默认显示,当值满足时隐藏,反之,默认不显示,当值满足时显示
2、onChange调用接口 开启配置时,当值改变时,会调用接口,
3、onChange赋值 开启配置时,当值改变时,会调用赋值给联动表单
4、onChange赋值初始化 开启配置时,当值改变时,会调用赋值给联动表单,并调用联动表单初始化方法

支持自定义表单组件

其中菜单权限是自定义开发的组件,需要对外提供getData方法,将值提供给外层组件获取。表单页面模版在提交时,会调用该方法获取

按钮交互配置

可配置按钮的交互方式,如跳转到配置的页面,调用接口,下载等等。按钮有自己的显示规则。

由于功能较多,未完待续。。。

体验地址

http://121.89.184.22/candys-tool/

test / 123456

有兴趣了解的童鞋可以加我微信 

个人网站 www.wetalks.cn/