以角度定义观察者模式

问题描述 投票:0回答:1

我有一个用例我有六个领域A,B,C,D,E,FOn change of A >> B will be updatedOn change of B >> C , D will be updatedon change of (D & E) >> F will be updatedit means if I update A it in turn should update B >> which indirectly should update >> C,D , which indirectly should update F

on updating A >>(directly) B >> C,D >> F

我正在尝试使用观察者模式

1)在这里使用观察者模式是正确的选择-如果没有,那我应该用什么其他方法-如果是,则应使用主题并且可观察谁能举一个小例子来说明如何使用主题和可观察在这种情况下

angular observable observer-pattern behaviorsubject
1个回答
0
投票
observableA$ = /*...*/;
observableB$ = observableA$.pipe(
  // ...
);
observableC$ = observableB$.pipe(
  // ...
);
observableD$ = observableB$.pipe(
  // ...
);
observableE$ = /*...*/;
observableF$ = combineLatest([observableD$, observableE$]).pipe(
  // ...
);

对于//...,您很可能需要使用mapswitchMap这样的运算符>

工作示例:https://stackblitz.com/edit/angular-mojs6k

© www.soinside.com 2019 - 2024. All rights reserved.