这是撤消/重做的示例:Undo_Redo_Delete
我做了以下步骤:
- 拖放开始和结束节点。
- 通过端口连接它们。
- 删除结束节点。
- 现在再次拖动结束节点。
- 这次我再次尝试连接开始和结束节点,但它显示
类型错误:this.parent.getCanvas() 为空
在 port.js 的 this.parent.getCanvas().connectionLine.setGlow(false) 处。
如果有人知道如何解决这个问题,请帮助我。在此先感谢:)
这是撤消/重做的示例:Undo_Redo_Delete
我做了以下步骤:
类型错误:this.parent.getCanvas() 为空
在 port.js 的 this.parent.getCanvas().connectionLine.setGlow(false) 处。
如果有人知道如何解决这个问题,请帮助我。在此先感谢:)
已在 0.9.38 版本中修复
如果您需要快速修复,可以使用下面的代码替换 onDragEnd 方法。
/**
* @inheritdoc
**/
onDragEnd:function()
{
this.parent.getCanvas().setSnapToGrid(this.originalSnapToGrid );
this.parent.getCanvas().setSnapToGeometry( this.originalSnapToGeometry );
// Don't call the parent implementation. This will create an CommandMove object
// and store them o the CommandStack for the undo operation. This makes no sense for a
// port.
// graphiti.shape.basic.Rectangle.prototype.onDragEnd.call(this); DON'T call the super implementation!!!
this.setAlpha(1.0);
// 1.) Restore the old Position of the node
//
this.setPosition(this.ox,this.oy);
// 2.) Remove the bounding line from the canvas
//
this.parent.getCanvas().hideConnectionLine();
this.isInDragDrop =false;
// Reset the drag&drop flyover information
//
this.currentTarget = null; // <<== this is the missing line to fix the bug
},