flatMap 연산자에서 임의의 동작이 발생하고 그 이유를 찾을 수 없습니다. 경우에 따라 트리거됩니다 ...관찰 대상 : flatMap이 임의로 트리거되지 않음
여기에 상황이 있습니다 : 사용자가 내 앱에서 언어를 변경할 수 있으므로 언어에서 선택 목록에 의해 트리거 된 BehaviorSubject가 반환되었습니다. 공급자가 관찰 할 수 있습니다. 변경 사항이있을 때 flatMap을 통해 http 요청을 선택하여 선택한 언어로 데이터를 가져옵니다.
그것은 다음과 같습니다
this.languageProvider.getLang$().flatMap(langCode => {
return this.http.get(`https://SERVER_URL.net/datas?lang=${langCode}`)
.map(data => data.json())
})
.subscribe(
data => {
// do smth
},
err => {
// do smth
}
);
것은이고, 나는 언어를 변경할 때 HTTP 호출이 가장 자주 트리거되지 않습니다.
나는 간단한
this.languageProvider.getLang$().subscribe(langCode => {
console.log(langCode);
});
어떤 생각
나는이 문제를 왜 ... 항상 작동 가입 한 추가하면?