Ich habe eine AngularJS-Direktive, die eine Fabrik verwendet. Was ich versuche zu erreichen, ist sicherzustellen, dass, wenn das "mousedown" -Ereignis in der Direktive ausgelöst wird, dann eine Funktion in meiner Fabrik aufgerufen wird.AngularJS Factory-Ereignisbindung
Scheint einfach, aber wo ich auf ein Problem stoße ist in der Funktion in der Fabrik. Es hat keinen Zugriff auf meine Variablen, die in der Factory deklariert wurden.
Beispiel zum mousedown- Ereignisse in meiner Richtlinie verbindlich -
$element.on('mousedown', factory.onMouseDown);
Beispiel meiner Fabrik und die Funktion, die durch meine Richtlinie genannt wird -
angular.module('myApp.myFactory', []).factory('myFactory', [, function() {
var myFactory = function() {
this.someVariable = true;
};
myFactory.prototype.onMouseDown = function (e)
{
console.log(this.someVariable); // this.someVariable comes up as 'undefined'
};
return myFactory;
}]);
Was muss ich tun, um meine Fu zu machen? um in meiner Fabrik auf Variablen zugreifen zu können?
Danke!