Ich habe den folgenden Code für ein Drag-Ereignis:Zugang ‚this‘ in einer Funktion auf Drag-Ereignisse
BusinessProductFigure.prototype = new Figure();
BusinessProductFigure.prototype.constructor = BusinessProductFigure;
BusinessProductFigure.prototype.addTo = function(c, x0, y0, id) {
console.log("this=",this);
var n = d3.select(this);
var wasMoved = false;
var dragger = d3.behavior.drag()
.origin(function(d){return d;})
.on("drag", this.move)
.on("dragend", dropHandler)
Die Funktion this.move in dem obigen Code ausführt und führt es Funktion bezeichnet wird. Ich möchte jedoch eine Funktion hinzufügen, die beim Drag-Ereignis aufgerufen wird. Ich habe folgendes versucht:
BusinessProductFigure.prototype.addTo = function(c, x0, y0, id) {
console.log("this=",this);
var n = d3.select(this);
var wasMoved = false;
var dragger = d3.behavior.drag()
.origin(function(d){return d;})
.on("drag", function(){wasMoved=true; this.move})
.on("dragend", dropHandler)
Aber der oben genannte Code ruft nicht die Move-Funktion auf. Wie kann ich auf diese Eigenschaft innerhalb der Funktion zugreifen?
Ich verstehe den Grund nicht, um die Frage abzustimmen. Wenn jemand Anfänger ist und keinen Code herausfinden kann, ist es falsch zu fragen? Ist die Community nicht hier, um Entwickler zu unterstützen und neuen Programmierern zu helfen, zu lernen und zu verbessern? – Arihant