這是一個關於代碼組織和最佳實踐的問題。過程數據 - 在服務還是控制器?
使用$ resource從api中檢索數據,我需要在將數據發送到視圖之前對其進行處理。
我的問題是在什麼步驟來處理實際的數據。我的理解是它應該在服務中完成,但我也想在控制器內部進行實際的ajax調用。
就像現在一樣,我注入服務並使用像CdnService.sumOfVolumeRequest(response)這樣的函數來處理數據。
我是對的還是有更好的辦法?
服務:
function updateVolumeRequest() {
var params = {
metric: "size",
tStart: convertUtcToEpoch(SearchCriteria.criteria.dateFrom),
tEnd: convertUtcToEpoch(SearchCriteria.criteria.dateTo)
};
return params;
}
function volumeRequest() {
return CdnAnalyticsFactory.statsByDimension({
accountId: Token.UserInfo().Id
},
updateVolumeRequest())
.$promise;
}
控制器:
function getData() {
var data;
CdnService.sizeRequest(SearchCriteria.criteria.dateFrom, SearchCriteria.criteria.dateTo)
.then(function onSucess(response) {
data = CdnService.sumOfVolumeRequest(response)
});
}