晨光烁洁2022年10月24日
419阅读

作品详情

项目描述:百特搭是一个支持零代码,低代码的saas平台,包含零代码,低代码,报表,流程社交套件,百 特云市场,流程门户以及一系列管理系统组成的完善的在线软件服务平台。 表单引擎 技术栈:lerna、rollup、TypeScript、async-validator、Jest 基于JSON Schema和TypeScript组织控件底层属性,定义模型层; 采用monorepo架构,将模型层细分,通过npm模块的方式组织和管理; 使用async-validator对设计器模型以及运行时表单数据进行校验,使控件校验规则与视图解耦; 设计态引擎提供对于控件的设置项管理,处理设置项在不同场景,不同位置的逻辑联动和显隐,解决同 一控件在低代码零代码等不同场景的适配性; 运行态引擎使用Proxy的方式处理表单数据,使用数据驱动实例的方式,赋予开发或低代码二次开发简单 灵活性; 基于底层框架的发布订阅模式能力,实现引擎插件机制,剥离复杂的显隐联动,多级数据联动,表达式 计算,数据填充与过滤等逻辑,实现插件与页面逻辑互不干扰,互不依赖; 使用jest进行单元测试,提升底层引擎的稳定性。 运行态 技术栈:Vue3、Antdv、TypeScript、decimal.js、Cypress等 使用webpack多入口方式搭建,在保证不同入口的前提下使用了同一套业务逻辑,根据控件以及相同的业务逻辑封装hooks和插件,使得pc和移动端整体逻辑一致,再进行细微定制; 利用Typescript封装接口请求缓存类,实现在需要的时候,将某一个接口请求数量限制,相同参数只会 请求一次,并在之后所有的请求都使用同一次响应的返回值,在不需要的时候取消缓存; 优化大数据且复杂逻辑表单的加载速度,从60s+优化至5s内; 使用cypress进行e2e测试。 设计态 技术栈:Vue3、Antdv、TypeScript、Vue.Draggable、vue3-dnd、monaco等 使用vue3-dnd完成了自由页面的定位栅格和流式两种拖拽布局; 使用monaco代码编辑器实现低代码二开js与css等逻辑的在线编辑; 自定义控件 自技术栈:Node.js、Vite、babel、ejs、cac、koa等 使用cac和Node.js开发自定义控件cli工具,byteluck-cli(npm 可安装) 使用babel结合vite plugin实现编译开发者定义的控件JSON,转换为内部的TypeScript控件定义 使用koa提供本地开发服务器,实现本地开发的自定义控件在线上环境预览与调试 使用vite对自定义控件进行打包编译,并最终处理成zip压缩包 公共库 流程审批组件、公司UI组件、oss上传插件、浏览器兼容提醒插件、公式解析器等
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论