Net

属性

clipboard {Boolean}

剪贴板 false

rollback {Boolean}

回滚存储,默认值 false

modes {Object}

默认值

{
  // 默认模式
  default: [
    'dragNode', 'dragEdge', 'dragBlank', 'clickBlankClearActive', 'resizeEdge', 'clickActive',
    'resizeNode', 'wheelZoom', 'dragNodeEndSetActive'
  ],
  // 编辑模式
  edit: [
    'dragNode', 'dragEdge', 'clickBlankClearActive', 'resizeEdge', 'clickActive', 'dragNodeEndSetActive',
    'multiSelect', 'resizeNode', 'shortcut', 'wheelZoom', 'hoverNodeShowAnchor', 'hoverAnchorSetActived', 'dragEdgeEndHideAnchor', 'dragNodeEndHideAnchor'
  ],
  // 拖动模式(查看模式)
  drag: ['shortcut', 'dragCanvas', 'wheelZoom'],
  // 添加模式
  add: ['clickAddNode', 'dragAddEdge', 'hoverAnchorSetActived', 'hoverNodeShowAnchor'],
  // 图分析模式
  analysis: [
    'dragCanvas', 'wheelZoom', 'dragHideEdges', 'dragHideTexts', 'wheelZoomHideEdges', 'wheelZoomHideTexts'
  ],
  // 空模式
  none: []
}

behaviourSignal {Boolean}

交互信号量

{
  draggingEdge,   // true 为正在拖动边的端点
  draggingNode    // true 为正在拖拽节点
}

实例方法

showAnchor {Function}

显示锚点

/**
 * 显示锚点
 * @param {Object} node 子项
 * @return {Object} self
 */
net.showAnchor(node);

hideAnchor {Function}

隐藏锚点

/**
 * 隐藏锚点
 * @param {Object} node 子项
 * @return {Object} self
 */
net.hideAnchor(node);

add {Function}

添加节点或边

/**
 * 增加节点、边
 * @param  {String} type 类型:node ,edge
 * @param  {Object} model
 * @return {Item}   item 子项
 */
net.add(type, model);
/**
 * 事件绑定
 * @param  {String}   eventType 事件类型
 * @param  {Function} fn        回调函数
 */
net.on(eventType,fn);

除了 Graph 上的事件,net 还支持以下事件

graph.on('afteradd', function(ev){});        // 添加子项结束后事件

source {Function}

加载数据源,接受 nodesedges

/**
 * 加载数据源
 * @param  {Array} nodes 节点集
 * @param  {Array} edges 边集
 */
net.source(nodes, edges);

编辑器示例:

示例源码

beginAdd {Function}

开始添加元素,通常配合编辑器一并使用。

endAdd {Function}

结束添加元素,通常配合编辑器一并使用。

copy {Function}

复制激活子项

paste {Function}

粘贴激活子项

del {Function}

删除激活子项

updo {Function}

撤销

redo {Function}

重做