0
我正在嘗試使用D3的拖動功能「拖動圓點」(一個svg圓圈)。爲了保持模塊化,我有多個文件。在「App.js」文件中實例化一個來自「Dot類」文件的點是可行的!然而,拖動行爲是平穩的。在模塊化ES6中使用D3
我一直在這一段時間,修補和「谷歌搜索」。現在拉頭髮。我需要第二套眼睛。我錯了什麼?
謝謝!
Dot.js:
import * as d3 from "d3";
export class Dot {
constructor(cx, cy, rad){
this.cx = cx;
this.cy = cy;
this.radius = rad;
this.svg = null;
this.dot = null;
this.width = 199;
this.height = 533;
}
buildDot(){
this.dot =
d3.select("body").append("svg").attr("width",this.width).attr("height",this.height).append("circle").attr("cx",this.cx).attr("cy",this.cy).attr("r",this.radius);
return this.dot;
}
onDrag(){
console.log("dragging");
}
}
App.js:
import {Dot} from './js/Dot';
import * as d3 from "d3";
(function(){
var dot = new Dot(200, 200, 99).buildDot();
console.log(dot);
dot.call(d3.drag().on("drag", dot.onDrag));
})();