Angular 如何仅在另一个操作完成后分派操作

Angular 如何仅在另一个操作完成后分派操作,angular,ngrx,ngrx-store,Angular,Ngrx,Ngrx Store,我有两个动作,动作1从所有服务中带来与控制相关的东西,动作2带来与这些控制相关的数据。我想分派action1,当它成功完成时,我只想分派action2 ngOnInit() { this.store.dispatch(new Action1(data1)); this.store.select(action1Sel).subscribe(res =>{ this.store.dispatch(new Action2(data2)); });

我有两个动作,动作1从所有服务中带来与控制相关的东西,动作2带来与这些控制相关的数据。我想分派action1,当它成功完成时,我只想分派action2

ngOnInit() {
    this.store.dispatch(new Action1(data1));

    this.store.select(action1Sel).subscribe(res =>{
        this.store.dispatch(new Action2(data2));
     });
       
}

我喜欢这样,但我在寻找更好的方法。在ngrx中实现这一点的有效方法是什么?

嗨,有趣的是,我认为您有一个很好的方法。您可以使用effect library中的action$,但这两种方法中的任何一种都不实用Action1通过effect调用服务,比如Effect1。当Effect1成功时,它应该返回/分派Action2。您只能直接从ngOnInit调用Action1。嗨,有趣的是,我认为您有一个很好的方法您可以使用effect library中的action$,但这两种方法都不太实用Action1通过effect调用服务,比如Effect1。当Effect1成功时,它应该返回/分派Action2。您只能直接从ngOnInit调用Action1。