一个基于JS的数据驱动的节点式编排组件库

主题

  说说之前做流程显示时用到的一个组件,时隔几年又被翻出来用作 "表字段血缘/业务血缘"、"可视化建模图",选来选去经过一番折腾,最后又回到了老路,就趁着中午休息简单介绍一下butterfly

发现身边事儿、聊点周奇遇,我是沈二,期待奇遇的互联网灵魂~、一起聊天吹水,探索新的可能~wx:breathingss,入圈吧!

特点及效果

  之前因为又用的基础,主要就是流程图甬道及多段流程拼接显示(流程太长,分段提升自由度)问题,最重要的是,渲染用的svg模式,可以支持结合html和样式,有自动化的布局模式可以封装,同时节点的自定义也比较简单,处理好布局、数据结构、显示就轻松的解决了显示,交互和流程进度标记的问题、

  第二次处理涉及到血缘和可视化建模这些,选择面就主要集中在G6,mxGraph(process-on就是基于此实现),当然主要原因是没有参考示例,而且实现起来周期比较长,许多的生态集中在react上,本次用的是vue,过程需要做转换   当然,如果说有瑕疵的话,主要是滚动缩放及定位方面,稍稍有些不够流畅,但在可接受范围内,通过优化也能适当的解决,以下是官网的特点介绍

  • 开箱即用: 丰富DEMO,开箱即用,支持demo调试,导出即用
  • 全方位管理画布: 全方位管理画布,开发者只需要更专注定制化的需求
  • 强定制性: 利用DOM/REACT/VUE来定制元素;灵活性,可塑性,拓展性优秀

主要结构

  没啥太过复杂的结构,绝大部分的变形可通过布局,节点、线条、锚点 自定义实现,不过几个文件就可定义出图形,但在真实的应用中,还是需要对数据结构进行二次的处理加工,以达到使用上的便捷性。

题外话

主要是便捷性和语言的差异化,用通用的js组件,针对超大型的渲染,可能会稍弱一些,但强在便捷性、易用性上。

相关推荐
剪刀石头布啊2 小时前
vue-react为何要虚拟dom
前端
剪刀石头布啊2 小时前
ahooks常用的一些库,我们使用一下
前端
剪刀石头布啊2 小时前
从git更新本地提交记录到更新已经推送到远端记录
前端
云浪3 小时前
Go 并发实战:从零实现一个高并发安全的任务调度器
javascript·后端·go
Flynt4 小时前
axios 被投毒半年后,我把 npm 的"安全防线"实测了一遍:最信任的 SHA512 是安慰剂
前端·npm·node.js
excel5 小时前
Base62 和 Base64 有什么区别?
前端
风骏时光牛马6 小时前
大模型底层架构与AI源码深度剖析
前端
掘金挖土7 小时前
前端手摸手跑路之 AI 应用开发(九)
前端·后端
中文呀9 小时前
三维 GIS 离线缓存实战:逆向 CesiumOfflineCache,并亲手为它补上"自动更新"能力
前端