Skip to content
This repository was archived by the owner on Jan 25, 2022. It is now read-only.

Repository files navigation

思维导图Vue2组件 npmnpm

一个由MindNode启发的思维导图Vue组件,基于d3.js实现
目前实现的功能有基本的编辑、拖移、缩放、撤销、上下文菜单、折叠...

近期更新

该项目基本不会再维护
目前正在开发Vue3、d3v6版本的思维导图组件,欢迎支持

安装

npm install @hellowuxin/mindmap

PROPS

NameTypeDefaultDescription
v-modelArrayundefined设置思维导图数据
widthNumber100%设置组件宽度
heightNumberundefined设置组件高度
xSpacingNumber80设置节点横向间隔
ySpacingNumber20设置节点纵向间隔
strokeWidthNumber4设置连线的宽度
draggableBooleantrue设置节点是否可拖拽
gpsBooleantrue是否显示居中按钮
fitViewBooleantrue是否显示缩放按钮
showNodeAddBooleantrue是否显示添加节点按钮
keyboardBooleantrue是否响应键盘事件
contextMenuBooleantrue是否响应右键菜单
zoomableBooleantrue是否可缩放、拖移
showUndoBooleantrue是否显示撤销重做按钮
downloadBooleantrue是否显示下载按钮

EVENTS

NameargumentsDescription
updateNodeNamedata, id更新节点名称时,传入节点数据和节点id
clickdata, id点击节点时,传入节点数据和节点id

样例

<template><mindmapv-model="data"></mindmap></template><script>importmindmapfrom'@hellowuxin/mindmap'exportdefault{components: { mindmap },data: ()=>({data: [{"name":"如何学习D3","children": [{"name":"预备知识","children": [{"name":"HTML & CSS"},{"name":"JavaScript"},
...
]},{"name":"安装","_children": [{"name": "折叠节点"}]},{"name":"进阶","left": true},
...
]}]})}</script>

键盘事件

⇥ tab⏎ enter⌫ backspace⌘ cmd+z⌘ cmd+y

交互逻辑

鼠标:space+左键移动、右键菜单、ctrl+滚轮缩放、左键选中

触控板:双指滚动移动、双指菜单、双指捏合缩放、单指选中

待解决

  • 导出多种格式
  • 设置节点的宽高
  • 多个根节点
  • ...

About

Mindmap component for Vue2

Topics

Resources

Stars

465 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages