【发布时间】:2020-03-27 20:43:20
【问题描述】:
有谁知道为什么switchMap 运算符不起作用?
我尝试使用第二个 map 运算符代替它并且它起作用了,但我不明白为什么 switchMap 不起作用。
@Injectable()
export class PizzasEffects {
constructor(private actions: Actions, private pizzasService: PizzasService) {}
@Effect()
createPizzaSuccess$ = this.actions.ofType( fromPizzasActions.CREATE_PIZZA_SUCCESS ).pipe(
map( (action: fromPizzasActions.CreatePizzaSuccess) => action.payload ),
switchMap( (pizza: Pizza) => new fromRouterActions.Go({path: ['products', pizza.id]}) )
);
}
【问题讨论】:
-
switchMap需要 Observable、Promise、Array 或 Iterable,但您提供了Action。