我正在使用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信息。
答案 0 :(得分:0)
一般
服务用于API调用和 控制器用于使用在UI上显示的所需逻辑来编写/修改数据(来自API)。