vue拓扑图组件

vue拓扑图组件

介绍

一个基于 Vue3 的拓扑图组件,具有以下特点:
1.基于 vue-flow 实现,提供流畅的拓扑图展示体验

2.支持传入 JSON 对象自动生成拓扑结构

3.自动计算节点位置,无需手动布局

4.支持节点拖拽、缩放、居中等交互操作

5.提供全屏查看模式

6.支持多种架构展示:微服务、云平台、大数据平台等

7.完全组件化封装,使用方便

技术栈

1.Vue 3

2.Vue Flow

功能特性

  1. 自动布局:根据数据结构自动计算节点位置
  2. 交互控制
    • 支持画布拖拽
    • 支持节点拖动
    • 支持画布缩放
    • 支持画布居中
    • 支持全屏查看
  3. 可视化增强
    • 节点悬浮效果
    • 连线动画
    • 层级颜色区分
    • 迷你导航图
  4. 组件化设计
    • 可独立使用的拓扑图组件
    • 支持 JSON 数据驱动
    • 提供完整的类型定义

快速开始

安装依赖

bash 复制代码
npm install

开发调试

bash 复制代码
npm run serve

构建部署

bash 复制代码
npm run build

使用示例

vue 复制代码
<template>
  <TopologyMap :topology="topologyData" />
</template>

<script setup>
import TopologyMap from '@/components/TopologyMap.vue'

const topologyData = [
  {
    id: 'root',
    label: '根节点',
    children: [
      {
        id: 'child1',
        label: '子节点1'
      },
      {
        id: 'child2',
        label: '子节点2'
      }
    ]
  }
]
</script>

演示截图

1.首页

2.微服务架构-拓扑图

3.云平台架构-拓扑图

4.大数据平台-拓扑图

组件源码

vue拓扑图组件

相关推荐
正义的大古几秒前
OpenLayers地图交互 -- 章节十七:键盘缩放交互详解
javascript·vue.js·openlayers
Hashan1 分钟前
elpis-core:基于 Koa 的轻量级 Web 应用框架
前端·javascript·node.js
前端Hardy15 分钟前
轻松搞定JavaScript数组方法,面试被问直接答!
前端·javascript·面试
云枫晖24 分钟前
手写Promise-catch和finally
前端·javascript
薄雾晚晴29 分钟前
大屏开发实战:封装自动判断、无缝衔接的文字滚动组件,告别文本截断烦恼
前端·javascript·vue.js
Beginner x_u1 小时前
前端八股文 Vue上
前端·javascript·vue.js·八股文
Strawberry_rabbit1 小时前
Docker
前端
江拥羡橙1 小时前
JavaScript异步编程:告别回调地狱,拥抱Promise async/await
开发语言·javascript·ecmascript·promise·async/await
前端康师傅1 小时前
JavaScript数组中的陷阱
前端·javascript
用泥种荷花1 小时前
【web音频学习(七)】科大讯飞Web端语音合成
前端