【发布时间】:2018-10-18 05:27:43
【问题描述】:
我认为这不是很复杂的问题,但我有点困惑如何使用 Promise 来解决这个问题。
有 3 个重要的实例:
- 组件
- HtppService
- 工具服务
结构如下: 组件有ToolService来执行函数——例如函数create()。 ToolService 有 HttpService,方法 create() 是这样的:
public create(){
this.httpService.create().subscribe(
(data) => {
//some complex processing
},
(error) => {
//handling error
}
);
}
您可以猜到httpService.create() 返回http.put()
问题是我想通知Component create() 的结果。所以我的想法是create()应该返回一个Promise,当(data)时会实现,当(error)时会被拒绝。
我有点困惑如何做到这一点。也许我应该以其他方式做到这一点? 请提出一些建议。
【问题讨论】:
-
订阅监听器应该只在组件中。直接从Component调用httpService.create(),而不是从ToolService调用。
-
@Srigar 我不想那样做。我想在 ToolService 中处理响应,而不是在组件中
-
将函数引用作为参数从组件传递给 ToolsService 并订阅它。它会工作
-
这不是我要找的
标签: angular promise angular2-services angular-promise