私は、HTTPリクエストでデータを取得するサービスを作成しています。Angularサービスは処理されたデータまたは生データを返しますか?
app.controller('WarriorsCtrl', function($scope, warriorService) {
warriorService.getWarriors(function(warriors){
$scope.warriors = warriors;
});
});
app.factory('warriorService', function($http) {
var getWarriors = function(callbackFn) {
$http.get('/api/warriors').success(function(data) {
callbackFn(data);
});
};
return {
getWarriors: getWarriors
};
});
コントローラは、いくつかの処理された形式で「戦士」を必要とする場合には、サービス自体の処理を行うことをお勧めですか?
例:
var getWarriors = function(callbackFn) {
$http.get('/api/warriors').success(function(data) {
var processedWarriors = processData(data);
callbackFn(processedWarriors);
});
};
またはそのようなフィルタとしての生データを返すと、どこか別の処理を行うためにサービスを利用する方が良いでしょうか?
これは、「あなたが常にべき」か「あなたはいけ」単純明快に答えることができるものではありません...これは、データが使用されているどのくらいに応じて異なりますものですデータの処理方法、データの量、アプリ設計自体の中核を占めるその他のものは約100万点です。 – Claies
何かのために生データを必要とするかどうか尋ねてください。あなたがしなければ、答えは明らかです。そして、はい、それは約束を使うべきであり、答えが説明するように、「成功」を使うべきではありません。 – estus