在几个组件之间做出选择,每个组件对应一个http get请求,或者一个组件有多个get方法

时间:2016-07-13 11:06:09

标签: angular angular2-services

所以我想提出的问题不是关于代码而是关于选择。随着我正在努力的项目不断发展,我越来越担心不同想法/模式的正确方法。

在这种情况下,基于https://angular.io/docs/ts/latest/guide/server-communication.htmlhttps://stackoverflow.com/a/34450948/6028947

我想知道什么是最好的,更多的推荐,或者只是优先考虑是将多个GET请求放在同一个文件中,还是有更多的文件,更多的组件,所以它更加分离。 / p>

我的观点是,我要点击某些内容,从后端获取答案,显示这些答案和选择,点击它们,获得答案,获得更多选择,这可能是一条路径,至少4个步骤。

所以我想知道我是否需要为每一步执行相当于hero-list.component.ts的操作,因为有几个GET和几个订阅者,或者不需要它。

提前致谢。

1 个答案:

答案 0 :(得分:0)

在SO上的其他线程中引用您的示例:

@Injectable()
export class CompanyService {
  constructor(http:Http) {
    this.http = http;
  }

  getCompanies() {
    return this.http.get('https://angular2.apispark.net/v1/companies/')
              .map(res => res.json());
  }
} 

...您将在此服务中捆绑与公司相关的所有http请求,例如更新其首选项,上传公司图像,删除它等等。

如果您需要更新用户个人资料,您可能会创建一个UserService并使用适当的方法填写它。

所以,如果我的问题是正确的:是的,请在同一服务中捆绑处理特定业务资源的http请求,例如company