RxJS 5share()
연산자의 동작을 이해하려고합니다.공유() RxJS 운영자가 Rx.Observable.ajax와 함께 작동 중
튜토리얼 및 설명서에 따르면 share()
은 콜드 관측 대상을 뜨거운 대상으로 바꿉니다.
나는 그 행동을 보려고합니다. 여기에 내가 시도 무엇인가 : 다음
const search$ = Rx.Observable.ajax('https://www.googleapis.com/books/v1/volumes?q=javascript').share();
그리고 처음 내가 가입 시간 :
Request URL:https://www.googleapis.com/books/v1/volumes?q=javascript
: 내가 네트워크 요청이 발행하는 개발 도구에서 볼
search$.subscribe(console.log);
다음에 동일한 서브 스크립 션을 다시 실행하면 :
search$.subscribe(console.log);
다른 네트워크 요청도입니다.
누군가가 share()
운영자가이 동작을 표시하는 이유를 설명해주십시오. 하나의 네트워크 요청이 발행 될 것으로 예상 했었습니다 ...
P.S.xxx.share();
대신 xxx.publishLast().refCount();
을 사용하면 위와 같은 상황에서 share()
동작을 이해해야합니다.
감사합니다. olsn. 이것은 이제 전시 된 행동을보다 분명하게 만듭니다. 필자가 한 번만 더 심문하는 것은'publishLast(). refCount()'이며 http 요청을 캐싱하기 위해 묵시적으로 완료되지 않은 스트림이 좋은 습관으로 간주됩니까? – balteo
예 -하지만 여기 rxjs-doc-section에 대한 추가 링크로 답변을 업데이트했습니다. – olsn
감사합니다.이 detailled 답장과 링크를 많이 보내 주셔서 감사합니다! – balteo