@alone-g6/edge-drag-link
v1.0.14
Published
g6 拖拽连线
Downloads
31
Readme
基于@antv/g6的边拖拽连线组件
使用
import {edgeDragLinkNode, stateName as edgeStateName, edgeDragLinkBehavior, edgeDragArrow} from '@alone-g6/edge-drag-link';
const EdgeDragLinkNode = edgeDragLinkNode();
1、在自定义节点的afterDraw函数调用该组件的afterDraw用于生成拖拽辅助点shape
afterDraw(cfg, group) {
EdgeDragLinkNode.afterDraw(cfg, group);
}
2、在合适的时机设置edge-drag-link为激活状态,用于显示拖拽点
setState(name, value, item) {
EdgeDragLinkNode.setState(name, value, item);
}
3、使用交互
G6.registerBehavior(edgeDragLinkBehavior.name, edgeDragLinkBehavior);
modes: {
default: ['drag-node', edgeDragLinkBehavior.name],
}
4、使用箭头拖拽
G6.registerEdge('some-name', edgeDragArrow, 'line');
节点参数
markerStyle
: 辅助点的样式getAttr
: 动态获取attr属性function(value, item, shape)stateChanged
: 状态变更事件function(value, item, shape)
交互参数
shouldBegin(e)
: 是否允许当前被操作的条件下开始创建边shouldEnd(e)
:是否允许当前被操作的条件下结束创建边
交互事件
edge-drag-link:end
:当边创建完成时将会触发该时机事件。使用 graph.on('edge-drag-link:end', edge => {...}) 监听。其参数 edge 字段即为刚刚创建的边。