在角度服务或控制器中使用成功和错误

时间:2014-09-29 13:59:50

标签: javascript angularjs separation-of-concerns

我创建了一个包含此代码的角度服务:

authenticationAPI.login = function() {
            return $http({
                method: 'GET',
                timeout: 10000,
                url:'http://serverName/apiName/Login',
                params : {userName : 'User',
                          password : '12345'}
            });

所以,目前我的" authenticationController"正在使用"登录"此服务的方法,并自行处理.success和.error。

我选择在控制器内部处理它的原因之一是在遇到错误时决定如何处理控制器中的html(显示警告,更改某些元素)。

但是,我是角色的新手,并不确定这是否是处理请求的最佳做法。

你能帮我弄清楚我是否应该在服务或控制器中处理这个逻辑吗?

1 个答案:

答案 0 :(得分:0)

我认为这完全取决于处理延迟逻辑所需要的内容。我已经做了两件事 - 让服务处理延迟,让控制器处理延迟。我认为决定因素应该是:

延迟逻辑是否会更新视图/ UI?然后在控制器中处理它

延迟逻辑是否会更新否则将由其他提供商或控制器使用的数据?然后在服务中处理它。

在你的情况下,它听起来像需要处理的视图逻辑,所以我认为控制器很好。