js2flowchart.js 教程

js2flowchart.js是一个可以将任何JavaScript代码转换成漂亮的SVG流程图的可视化库。该插件目前已开源到github,有超过1300多个star。本文介绍js2flowchart.js的相关教程。

js2flowchart能做什么?

js2flowchart以您的JS代码并返回SVG流程图,在客户端/服务器上运行,支持ES6。

主要特点:

  • 定义的抽象级别仅呈现导入/导出,类/函数名称,函数依赖关系来逐步学习/解释代码。
  • 自定义抽象层次支持创建你自己的
  • 演示生成器生成SVG列表以便获取不同的抽象级别
  • 定义流程树修饰符来映射众所周知的API,比如ie [] .map,[] .forEach,[] .filter到Loop结构等等。
  • 销毁修饰符来替换方案中的一个形状的代码块
  • 自定义流程树修饰符支持创建您自己的一个
  • 流树忽略过滤器完全省略一些代码节点,即日志行
  • 重点节点或整个代码逻辑分支来突出重点部分的方案
  • 模糊节点或整个代码逻辑分支来隐藏不太重要的东西
  • 定义的样式主题支持选择一个你喜欢的
  • 自定义主题支持创建自己的一个更适合您的上下文颜色
  • 自定义颜色和样式支持提供方便的API来更改特定的样式,而无需样板

安装

js2flowchart是一个从JavaScript代码生成漂亮的SVG流程图的工具。下面我们使用NPM来进行安装它。

yarn add js2flowchart

基本用法

首先我们来实现一个简单的demo。html代码如下:

<div>
  <p id="svgImage"></p>
</div>
<!-- :www.xttblog.com -->

剩下的就是最主要的JavaScript代码了:

const code = `
function indexSearch(list, element) {
  let currentIndex,
    currentElement,
    minIndex = 0,
    maxIndex = list.length - 1;

  while (minIndex <= maxIndex) {
    currentIndex = Math.floor(maxIndex + maxIndex) / 2;
    currentElement = list[currentIndex];

    if (currentElement === element) {
      return currentIndex;
    }

    if (currentElement < element) {
      minIndex = currentIndex + 1;
    }

    if (currentElement > element) {
      maxIndex = currentIndex - 1;
    }
  }

  return -1;
}`;

const {createFlowTreeBuilder, createSVGRender} = js2flowchart;

const flowTreeBuilder = createFlowTreeBuilder(),
    svgRender = createSVGRender();

const flowTree = flowTreeBuilder.build(code),
    shapesTree = svgRender.buildShapesTree(flowTree);

const svg = shapesTree.print();

document.getElementById('svgImage').innerHTML = svg;

最后的运行效果如下:

根据 JavaScript 代码生成漂亮的 SVG 流程图

另外js2flowchart还提供了很多常用的api,建议大家到它的官网进行深入的学习。

js2flowchart.js 教程

: » js2flowchart.js 教程

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/251329.html

(0)
上一篇 2022年5月2日
下一篇 2022年5月2日

相关推荐

发表回复

登录后才能评论