d3.js v5.4.0 中的拖动问题

Drag issue in d3.js v5.4.0

我正在尝试使用 d3.js v5.4.0.

实现 this 示例

但是如你所见here and here:

即使没有抛出错误,拖动后节点的先前图像也不会被删除。

我调试了单步执行的拖动代码,但未能找到造成这种情况的原因。将不胜感激提供的任何帮助。

我认为问题可能出在这里:

thisGraph.drag = d3.drag()
            .subject(function(d){
                return {x: d.x, y: d.y};
            })
            .on("drag", function(args){
                thisGraph.state.justDragged = true;
                thisGraph.dragmove.call(thisGraph, args);
            })
            .on("end", function() {
                // todo check if edge-mode is selected
            });

您在使用 Canvas 吗?你需要运行

context.clearRect(0, 0, canvasWidth, canvasHeight);

每次渲染