특정 Angular2 HTTP 호출 (서버에서 내 사용자 프로필 가져 오기) 결과를 캐시하고 프로필을 업데이트 할 때까지 캐시를 유효하게 유지하려고합니다. .특정 조건이 변경 될 때까지 HTTP 호출을 한 번 실행하고 값을 캐시합니다.
이것은 내가 가지고있는 코드입니다.이 코드는 값을 캐시하지만 프로파일이 변경 되더라도 절대 업데이트하지 않습니다.
readonly user$: Observable<User> = this.http
.get(`${this.baseUrl}/me`)
.map(r => r.json())
.publishLast()
.refCount();
updateProfile(user: User): Observable<any> {
return this.http.put(`${this.baseUrl}/me`, user);
// cause the existing user$-subscriptions to update with the user value
}
는 바람직 나는 프로파일이 updateProfile
에 전달 된 user
값으로 기존 구독을 업데이트 할. 이것은 Rx-y 방법으로 멋지게 수행 할 수 있습니까? 아니면 Subject
을 사용하여 수동으로 업데이트해야합니까?