首页 > angular js 如果有多个服务,应该如何用呢?

angular js 如果有多个服务,应该如何用呢?

后台主要是restful api ,比如有很多taskService,projectService,commentService等等,我在一个界面要或去这三个服务的某些数据,就是一个任务要获取 评论,所属项目,任务内容等等详细的信息。在controller中该如何去写

taskService.query({uid:13},function(resource){
            $scope.tasks_list=resource;//获取某条任务的所有信息
        projectService.query({id:resouce.xmid},function(){//在将该信息的项目id传过去
            ...
        })
})

这样是不是会陷入嵌套?
望大神们给点思路啊~,还是说一开始的设计就有问题?


前端的请求是异步的,最好服务端改一下api,如果服务端不改的话你这边就只能用angular的promise,相当于转换为同步操作


建议使用promise方案,在angular中就是$q。


这应该是服务端的问题。如果有需求需要调用多个service,最好基于这些需要增加对应的服务端API。这样在前端去请求这个API就可以了。


如果 task project comment 之间存在关联,建议在服务端封装好再通过一个接口返回。

【热门文章】
【热门文章】