Ich versuche, ein paar größere Funktionen über 3-Controller in Angular JS wiederzuverwenden. Ich möchte die Funktionen nicht an meinen Root-Bereich anheften, da ich sie von Funktionen, die nur 3-mal innerhalb dieser 3 Controller verwendet werden, freihalten möchte.Mit gleichen Funktionen in zwei verschiedenen Controllern AngularJS
Können Sie mir sagen, wie ich das erreichen kann, ohne meine Funktionen in den Stammbereich zu schreiben?
es in einer Fabrik versucht, aber Aufruf AdminModule.toLevelKey() wird nicht funktionieren ...
.factory('AdminModule',
[ '$resource', 'serviceURL', function ($resource, serviceURL) {
return $resource(serviceURL + 'class/:id', {
id : '@id'
}, {
getClasses : {
method : 'GET',
url : serviceURL + 'extended/class',
isArray : true
},
toLevelKey : function (value) {
var return_key = parseInt(Math.floor(value/3));
var return_level = value % 3;
return { level : return_level + 1, levelTranslationKey : return_key + 1 };
},
fromLevelKey : function (level, key) {
if (angular.isDefined(level)) {
var value = (key - 1) * 3 + (level - 1);
return value;
} else {
return null;
}
}
}
);
} ]);
Kann der Downvoter bitte sagen, was falsch ist? –
@ DavidFariña, ich denke, dass Downvoter bedeutet, dass die Antwort nicht Frage entspricht. Ich füge diese Antwort zu deinem Kommentar hinzu: "Gibt es noch mehr Optionen?" Die Antwort enthält nichts falsch. –
Ich habe es tatsächlich so gemacht, weil ich nicht in der Lage war, den Dienst dorthin zu bringen, wo ich es brauchte. Vielen Dank –