小编Wyb*_*tra的帖子

Typescript/D3 v4 - d3.drag()中的上下文.("end",this.dragended)

我正在使用D3库来移动维恩图中的项目.当我停止拖动时,我想确定图表中项目的位置.

item.call(d3.drag()
    .on("start", this.dragstarted)
    .on("drag", this.dragged)
    .on("end", this.dragended)
);
Run Code Online (Sandbox Code Playgroud)

这些是我在拖动开始时调用的函数,正在进行和结束.

dragended(d: TCMemberScenario, i: number) {
    d3.select(this).classed("active", false);
    d.calculateRoles();
    this.save();
}
Run Code Online (Sandbox Code Playgroud)

这是拖动结束时调用的函数.我更新了图中的一些内容,然后我想调用save方法.这是班上的另一种方法.但是,此变量引用D3对象而不是类的实例.所以我得到一个"未捕获的TypeError:无法读取属性'保存'未定义"

我怎样才能从dragended方法中调用我班级的另一种方法?

d3.js typescript d3.js-v4

5
推荐指数
1
解决办法
2389
查看次数

标签 统计

d3.js ×1

d3.js-v4 ×1

typescript ×1