【Vue + Antv X6】可拖拽流程图组件

embedded/2025/1/14 20:39:00/

使用事项:
❗先放个组件上来,使用手册有空会补全
❗需要下载依赖

“@antv/x6”: “^2.18.1”,
“@antv/x6-plugin-dnd”: “^2.1.1”,

组件:
在这里插入图片描述

组件使用:

  <flowChart :key="flowChartKey" ref="flowChart" left-title="可用工序" :node-list="nodeList" :graph-data="dataJson":drawer-config="drawerConfig" :line-drawer-config="lineDrawerConfig"route-record-type="2" route-record-label="procedureName" route-record-key="procedureId"/>
javascript">      nodeList: [],dataJson: {},drawerConfig: [{type: undefined,prop: 'procedureId'},{type: 'input',label: '工序名称',prop: 'procedureName',placeholder: '请输入工序名称',disabled: true},{type: 'input',label: '工序编号',prop: 'procedureCode',placeholder: '请输入工序编号',disabled: true},{type: 'selectDict',label: '工序类型',prop: 'procedureType',placeholder: '请选择工序类型',dictType: 'MES_GXLX',disabled: true}],lineDrawerConfig: [{type: undefined,prop: 'procedureId'},{type: 'input',label: '起始工序',prop: 'startProcedureName',placeholder: '',disabled: true},{type: 'input',label: '下道工序',prop: 'endProcedureName',placeholder: '',disabled: true},{type: 'selectRoute',label: '记录工序',prop: 'recordProcedure',placeholder: '请选择',options: [],disabled: false}]
javascript">     // 获取节点数据const nodeList = this.form.nodeList || []const nodes = []nodeList.forEach(el => {const coordinate = el.coordinate.split(',') || []const portList = el.portList.map(item => ({group: item.portGroup,id: item.portId}))console.log('el.procedureType.toString()', el.procedureType, el.procedureType ? el.procedureType.toString() : '')nodes.push({id: el.nodeId,x: coordinate.length ? coordinate[0] * 1 : 0,y: coordinate.length ? coordinate[1] * 1 : 0,width: el.width,height: el.height,label: el.nodeDesc,nodeType: el.nodeType,shape: 'custom-node',ports: {items: portList},nodeData: {procedureCode: el.procedureCode,procedureId: el.procedureId,procedureName: el.procedureName,procedureType: el.procedureType != null ? (el.procedureType === 0 ? '0' : el.procedureType.toString()) : ''}})})// 获取连线数据const linkList = this.form.linkList || []const edges = []linkList.forEach(el => {edges.push({id: el.linkId,source: {cell: el.startId,port: el.startPortId},target: {cell: el.endId,port: el.endPortId},nodeData: {recordProcedure: el.recordProcedure,startProcedure: el.startProcedure,startProcedureName: el.startProcedureName,postProcedure: el.postProcedure,endProcedureName: el.postProcedureName}})})this.dataJson = {nodes,edges}

http://www.ppmy.cn/embedded/153925.html

相关文章

Chromium 中libxml使用c++

Chromium中包含libxml 解析库 读取和写文件包含对应头文件即可。 1、读取xml third_party/libxml/chromium/xml_reader.h #include <map> #include <string>extern "C" { struct _xmlTextReader; }// XmlReader is a wrapper class around libxmls xm…

Ubuntu 24.04蓝牙失效之复活

Thinkpad E450 Ubuntu 24.04 蓝牙突然罢工&#xff0c;设置页面蓝牙无法激活(turn on失效&#xff09;。 网上搜索诸多帖子试了一遍都没有解决&#xff0c;直到拜读到这篇[Solved] Bluetooth down and hciconfig hci0 up timeout / Kernel & Hardware / Arch Linux Forums…

C++实现设计模式---代理模式 (Proxy)

代理模式 (Proxy) 代理模式 是一种结构型设计模式&#xff0c;它为其他对象提供一个代理以控制对该对象的访问。代理模式常用于延迟加载、访问控制、智能引用等场景。 意图 提供对某对象的控制。控制对目标对象的访问&#xff0c;通常用于在不改变目标对象的情况下&#xff0…

【PyQt】如何在mainwindow中添加菜单栏

[toc]如何在mainwindow中添加菜单栏 如何在mainwindow中添加菜单栏 主要有两种方法&#xff1a; 1.直接创建mainwindow进行添加 2.使用ui文件加载添加 第二种方法更为常见&#xff0c;可以应用到实际 1.直接创建mainwindow进行添加 import sysfrom PyQt5.QtWidgets import …

Spring Boot + MyBatis Plus 存储 JSON 或 List 列表全攻略

在现代的后端开发中&#xff0c;我们常常需要处理复杂的数据结构&#xff0c;JSON 数据以及列表&#xff08;List&#xff09;数据屡见不鲜。如何高效地使用 Spring Boot 和 MyBatis Plus 来存储这些复杂数据类型&#xff0c;是这篇博客要探讨的重点。 一、为什么要存储 JSON …

CentOS 和 Ubantu你该用哪个

文章目录 **一、CentOS 和 Ubuntu 的详细介绍****1. CentOS****1.1 基本信息****1.2 特点****1.3 缺点** **2. Ubuntu****2.1 基本信息****2.2 特点****2.3 缺点** **二、CentOS 和 Ubuntu 的异同****1. 相同点****2. 不同点****3. 使用体验对比** **三、总结和选择建议** Cent…

科技赋能:多功能气膜综合馆引领场馆新革命—轻空间

在现代体育场馆建设中&#xff0c;如何为运动员提供更佳的比赛环境&#xff0c;为观众营造更舒适的观赛体验&#xff0c;已成为场馆设计的关键课题。而多功能气膜综合馆以其独特的声学优化技术和卓越的场馆功能&#xff0c;成功突破了传统气膜场馆的局限&#xff0c;为运动体验…

macOS 版本对应 Xcode 版本,以及 Xcode 历史版本下载

注&#xff1a;当前页面的所有Xcode下载链接均为苹果官方下载链接 &#xff0c;点击将直接转至苹果官网下载。❤️❤️❤️ Xcode官网&#xff1a;Xcode Releases | xcodereleases.com Xcode版本Xcode发布时间对应macOS版本macOS SDKsiOS SDKswatchOS SDKstvOS SDKs下载Xcode发…