필터 함수를 반환하려고했으나 반환 값이 콜백과 함께 작동하지 않는 것 같습니다. 여기서 this.store.let(getIsPersonalized$)
은 관찰 가능한 방출 부울 값이고 this.store.let(getPlayerSearchResults$)
은 비디오 클래스의 관찰 가능한 방출 객체입니다. 동기식으로 실행하려면 어떻게해야합니까? 저장소에서 수신 한 관측 값을 수정할 수 없다는 가정하에 비동기식 콜백을 피할 수 있습니까? 당신의 구독 isPersonalized$
에 분기를 얻을 수 있다면관찰자 내에서 돌아 오는 방법은 무엇입니까?
isPersonalized$ = this.store.let(getIsPersonalized$);
videos$ = this.store.let(getPlayerSearchResults$)
.map((vids) => this.myFilter(vids));
myFilter(vids) {
this.isPersonalized$.subscribe((x){
if(x){
return this.fileterX(vids);//Return from here
}
else {
return this.filterY(vids);//Or Return from here
}
});
}
fileterX(vids) {
return vids.filter((vid) => vids.views>100;);
}
fileterY(vids) {
return vids.filter((vid) => vids.views<20;);
}