需求背景
公司需要在后台可配置医院的就诊流程,实现可单独关闭某个流程。
拿了网上的一张图,做个示范。
技术实现
现有的库调研 (供大家参考)
有一篇国外的技术文章有描述:有兴趣,请直接跳转
10+ JavaScript libraries to draw your own diagrams (2020 edition)
- JointJS
- flowchart.js
- 等等
鉴于上面的库,都没有太符合我的需求。故我决定直接上手svg画。
采用纯svg描绘
迎面而来的问题
1. 我如何获取到每个流程框和线的 (起始,结束坐标)
灵感来自:最早的切图经验,“网格线” 每个大网格都是 50x50,那么流程框和线的坐标就跃然纸上了。
当然下面是我简化的版本,实际会更麻烦。
总结
用“网格线”去获取元素的坐标,有点投机取巧,不合适实现严谨的应用,也算不上很好的实践。算是抛砖引玉,给大家一个实现思路。