Ich verwende das MEAN JS-Framework und so ziemlich alles, was damit einherging. Ich versuche jedoch, eine benutzerdefinierte Abfrage hinzuzufügen, wenn ein Benutzer zu einem bestimmten Pfad (URL) geht. Dies ist der Code, der mit MEAN JS kam: (in modules/artikel/Client/Dienstleistungen)Mean JS-Stack, erstellen Sie eine Fabrik, die zwei verschiedene Pfade behandelt
'use strict';
//Articles service used for communicating with the articles REST endpoints
angular.module('articles').factory('Articles', ['$resource',
function ($resource) {
return $resource('api/articles/:articleId', {
articleId: '@_id'
}, {
update: {
method: 'PUT'
}
});
}
]);
Und dies kümmert sich um alle in der Steuerung definierten Funktionen, die da sind: create, update, find, findOne, remove
. Jetzt versuche ich eine weitere Funktion, $scope.findByCategory = function (category) {...}
in der Steuerung hinzuzufügen. Aber damit es mit dem Server kommunizieren kann, muss ich den Pfad zu den Diensten hinzufügen.
Wie mache ich das? Wie bearbeite ich meinen Service (oder Factory), so dass er alle Funktionen, die ich in meinem Controller definiere, kümmert. (Ich habe bereits die Routen auf der Serverseite eingerichtet.) Mit anderen Worten, ich möchte den obigen Code und den untenstehenden Code in einem Stück in meinem Client-Dienst kombinieren. Hinweis: Das einzige, was sich ändert, ist der Pfad.
//Articles service used for communicating with the articles REST endpoints
angular.module('articles').factory('Articles', ['$resource',
function ($resource) {
return $resource('api/articles/category', {
articleId: '@_id'
}, {
update: {
method: 'PUT'
}
});
}
]);
Danke, es funktioniert. Ich werde Ihre Vorschläge berücksichtigen. Ich werde schließlich ein anderes Schema für Tags haben, also wäre es vielleicht sinnvoll, zwei Controller und zwei Fabriken zu haben. – user2512806