Эффекты NGRX - отправленные действия не выполняются по порядку - PullRequest
2 голосов
/ 05 ноября 2019

Проблема в том, что отправленные действия не выполняются по порядку. Ниже мой код. Пожалуйста, предложите, какие изменения необходимо сделать, чтобы отправленные действия выполнялись в порядке

@Effect()
  NTSPrintOrder$: Observable<any> = this.actions$.pipe(
    ofType(listOrderActions.NTSPrintAll),
    withLatestFrom(this.store$.select(state => state['listorder'])),
   mergeMap(([action, listOrderState]: any) => {
      let obs =[];
      var orders =  listOrderState.listOrders.filter(x => x.selected)
      orders.forEach(order => {
         obs.push(listOrderActions.editOrder({'payload': {order_number : order.order_number}}))
         obs.push(listOrderActions.loadNTSDocument())
      });

      obs.push(listOrderActions.printNTSDocument())

      return obs;
    })
  )
}

1 Ответ

0 голосов
/ 05 ноября 2019

Вы должны отправить только editOrder в пределах NTSPrintAll. Эффект editOrder затем отправляет loadNTSDocument, а эффект loadNTSDocument отправляет printNTSDocument.

...