0

我正在尝试删除两个节点之间的现有连接(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()

  }
}
4

1 回答 1

0

在 draw2d 库中有你想要的代码。我认为您可以像这样删除已经连接的连接:

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);
}
于 2017-06-30T14:47:57.110 回答