x6.js 流程图绘制笔记,常用函数

2024-03-06 07:44

本文主要是介绍x6.js 流程图绘制笔记,常用函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

官方参考网站如下:https://antv-x6.gitee.io/zh/docs/tutorial/about

安装x6

输入以下命令

 npm install @antv/x6 --save

引用插件代码如下:

import { Graph } from '@antv/x6';

创建绘制区域

this.guiX6 = new Graph({container: document.querySelector('.guix6'),width: 800,height: 600,background: {color: '#fffbe6', // 设置画布背景颜色},grid: {size: 10,      // 网格大小 10pxvisible: true, // 渲染网格背景},});

 插入数据并渲染

this.guiX6.fromJSON({// 节点nodes: [{id: 'node1', // String,可选,节点的唯一标识x: 40,       // Number,必选,节点位置的 x 值y: 40,       // Number,必选,节点位置的 y 值width: 80,   // Number,可选,节点大小的 width 值height: 40,  // Number,可选,节点大小的 height 值label: '开始~~' // String,节点标签},{id: 'node2', // String,节点的唯一标识x: 160,      // Number,必选,节点位置的 x 值y: 180,      // Number,必选,节点位置的 y 值width: 80,   // Number,可选,节点大小的 width 值height: 40,  // Number,可选,节点大小的 height 值label: '结束' // String,节点标签},],// 边edges: [{source: 'node1', // String,必须,起始节点 idtarget: 'node2' // String,必须,目标节点 id}]
})

效果如下图:

添加新节点

let data = new Shape.Circle({id: 'node3',x: 280,y: 200,width: 60,height: 60,label: 'circle',zIndex: 2,})
this.guiX6.addNode(data)

这里的data打印出来结构如下

连接节点

这里的node1与node2则为以上节点的id,节点连接是根据id来连接的。

const rect = this.guiX6.addEdge({shape: 'edge', // 指定使用何种图形,默认值为 'edge'source: node1,target: node2,
})

Graph内置常用函数

根据id获取节点对象

有时候节点不断的添加,节点会越来越多,如果要改某个节点就需要一个函数来查询节点信息。这里的节点信息与以上new Shape.cilcle的结构一样。

this.guiX6.getCellById('node1')

获取所有对象

this.guiX6.getNodes()

如下图

获取整个节点json

流程配置好之后,我们需要将配置好的数据返回给后端,后端制定相关流程,所以需要导出数据才行,如果是以上导出对象,则处理起来非常复杂,可用以下内置json函数导出

this.guiX6.toJSON()

以下json数据存储到服务器即可。 

这篇关于x6.js 流程图绘制笔记,常用函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/779318

相关文章

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

golang中reflect包的常用方法

《golang中reflect包的常用方法》Go反射reflect包提供类型和值方法,用于获取类型信息、访问字段、调用方法等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录reflect包方法总结类型 (Type) 方法值 (Value) 方法reflect包方法总结

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin