【发布时间】:2018-01-24 18:05:02
【问题描述】:
我创建了一个服务,使用 HttpClient.get 从服务器返回用户详细信息。
public getUser(id: number): Observable<User>{
return this.http
.get<User>('myUrl?id='+id);}
我已将服务注入到组件中。 在组件中我想获得一个用户,所以我订阅了返回 Observable 的服务方法。
到目前为止一切顺利。
我的问题: 现在我想获得另一个用户,问题是我如何激活服务方法以再次获得用户?
每次需要用户时,我是否应该取消订阅并重新订阅?
【问题讨论】:
-
httpClient 方法返回的 Observable 是冷的并且在响应之后完成。所以你不必取消订阅(导致 Observable 在响应之后完成)。是的,您必须再次调用 getUser(
) 并订阅返回的新 observable
标签: angular angular-httpclient angular-observable