# vue拓扑图组件 **Repository Path**: anxwefndu/vue-topology-map-component ## Basic Information - **Project Name**: vue拓扑图组件 - **Description**: 采用 vue-flow 书写的组件,传入JSON对象以展示拓扑结构,根据对象结构自动计算节点位置,代码由GPT书写 - **Primary Language**: JavaScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://blog.csdn.net/bingbingyihao/article/details/147153062 - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-11 - **Last Updated**: 2025-04-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # vue拓扑图组件 ## 介绍 一个基于 Vue3 的拓扑图组件,具有以下特点: 1. 基于 vue-flow 实现,提供流畅的拓扑图展示体验 2. 支持传入 JSON 对象自动生成拓扑结构 3. 自动计算节点位置,无需手动布局 4. 支持节点拖拽、缩放、居中等交互操作 5. 提供全屏查看模式 6. 支持多种架构展示:微服务、云平台、大数据平台等 7. 完全组件化封装,使用方便 ## 技术栈 - Vue 3 - Vue Router - Element Plus - Vue Flow - Vite ## 功能特性 1. **自动布局**:根据数据结构自动计算节点位置 2. **交互控制**: - 支持画布拖拽 - 支持节点拖动 - 支持画布缩放 - 支持画布居中 - 支持全屏查看 3. **可视化增强**: - 节点悬浮效果 - 连线动画 - 层级颜色区分 - 迷你导航图 4. **组件化设计**: - 可独立使用的拓扑图组件 - 支持 JSON 数据驱动 - 提供完整的类型定义 ## 快速开始 ### 安装依赖 ```bash npm install ``` ### 开发调试 ```bash npm run serve ``` ### 构建部署 ```bash npm run build ``` ## 使用示例 ```vue ``` #### 演示截图 1. 首页 ![](./assets/1.png) 2. 微服务架构-拓扑图 ![](./assets/2.png) 3. 云平台架构-拓扑图 ![](./assets/3.png) 4. 大数据平台-拓扑图 ![](./assets/4.png)