我正在使用Angular,并定义了一个服务和一个控制器。
当出现错误时,我需要向用户显示一条消息。我应该处理控制器上的错误还是控制器和服务上的错误?
服务是否应该返回$http并在控制器上处理所有事情?
function postService($http, $log, settings) {
return {
get: function () {
return $http.get("/api/recent-posts");
}
}
}或者服务应该只向控制器返回片段:
function postService($http, $log, settings, $q) {
return {
get: function () {
return $http.get("/api/recent-posts")
.then(function (response) {
return response.data;
}, function (response) {
$log.error("Service Error");
return ($q.reject("Service Error"));
});
}
}在第二种选择中,我不会向控制器返回完整的$http信息。
发布于 2016-01-21 19:46:29
一般而言
服务用于API调用,控制器用于使用在UI上显示所需的逻辑来编写/修改数据(来自API)。
https://stackoverflow.com/questions/34922710
复制相似问题