删除两个节点之间的连接

时间:2017-06-21 19:51:29

标签: jquery angularjs raphael draw2d-js

我正在尝试删除两个节点之间的现有连接(DragConnectionCreatePolicy)。我试过两种方法,第一种方法是使用这个命令:

this.canvas.remove(connection)但它会返回:EXCEPTION: figure.getCanvas is not a function

第二个

var cmd =  new draw2d.CommandDelete(connection);
this.canvas.getCommandStack().execute(cmd)
而是返回EXCEPTION: draw2d.CommandDelete is not a constructor

我在误解什么?

我在Angular 2组件中使用了draw2d。

export class sampleDraw implements OnInit {


  canvas:any;

  createGraph() {

    this.canvas = new draw2d.Canvas("canvas-div");

}

ngOnInit(){
    this.createGraph()

  }
}

1 个答案:

答案 0 :(得分:0)

在draw2d libray中有你想要的代码。我想你可以删除已经连接的连接:

this.canvas.lines.remove(connection);
connection.setCanvas(null);
connection.disconnect();
  

更新:

     

我找到了一种方法来删除draw2d中的任何项目。请定义命令   删除该项目。并执行它。

let cmd = connection.createCommand(new draw2d.command.CommandType(draw2d.command.CommandType.DELETE));
if (cmd !== null) {                     
    connection.getCanvas().getCommandStack().execute(cmd);
}