Vis.js: 如何在事件处理程序中访问网络?
Vis.js: how to access the network inside an event handler?
我想使用 vis.js 来显示和编辑图形(因此存储它的节点、边和选项)。为了实现这一点,我需要在各种事件中保存网络 (=graph) 的变化。其中一个是通过拖放重新排列。
现在,有一个 on
方法支持 dragEnd
事件,这意味着我可以做类似
的事情
network.on("dragEnd",saveToTiddlerAfterDragging);
但是what's passed to the handler这个对象是:
{
nodes: [Array of selected nodeIds],
edges: [Array of selected edgeIds],
event: [Object] original _ event,
pointer: {
DOM: {x:pointer_x, y:pointer_y},
canvas: {x:canvas_x, y:canvas_y}
}
}
似乎没有对 network
本身的引用。那么如何访问呢?我想在另一个范围内定义 saveToTiddlerAfterDragging
而不是 network
本身。
好吧,在阅读文档和写问题时,我猜测 network
实际上是事件处理程序上下文中的 this
。不确定它是否适用于所有事件处理程序,但适用于 dragEnd
一个。
我想使用 vis.js 来显示和编辑图形(因此存储它的节点、边和选项)。为了实现这一点,我需要在各种事件中保存网络 (=graph) 的变化。其中一个是通过拖放重新排列。
现在,有一个 on
方法支持 dragEnd
事件,这意味着我可以做类似
network.on("dragEnd",saveToTiddlerAfterDragging);
但是what's passed to the handler这个对象是:
{
nodes: [Array of selected nodeIds],
edges: [Array of selected edgeIds],
event: [Object] original _ event,
pointer: {
DOM: {x:pointer_x, y:pointer_y},
canvas: {x:canvas_x, y:canvas_y}
}
}
似乎没有对 network
本身的引用。那么如何访问呢?我想在另一个范围内定义 saveToTiddlerAfterDragging
而不是 network
本身。
好吧,在阅读文档和写问题时,我猜测 network
实际上是事件处理程序上下文中的 this
。不确定它是否适用于所有事件处理程序,但适用于 dragEnd
一个。