Angular Redux @effect:检索有效负载时出错

时间:2018-12-11 09:05:43

标签: angular typescript redux ngrx

我在使用ngrx / @ effect检索有效负载时遇到了一些问题

  //DELETE TASK
  @Effect({ dispatch: false })
  deleteTasks$: Observable<Task> = this.actions.ofType(fromActions.DELETE_TASK)
  .map((action: fromActions.DeleteTaskAction) => action.payload)
  .pipe(
    switchMap((payload) =>
      this.taskService.DeleteTask(payload).pipe(map(data => {
        return data;
      },
        error => console.log(error)
      )))
  );
  

错误:this.actions.ofType(...)。map不是函数

这是项目

https://stackblitz.com/edit/redux-in-actions?file=src%2Fapp%2Fstore%2Feffects%2Ftask.effects.ts

非常感谢你。 安德里亚

1 个答案:

答案 0 :(得分:1)

您应该在管道函数内使用ofType方法。 例如:

@Effect({ dispatch: false })
getTasks$: Observable<Task[]> = this.actions.pipe(
 ofType(fromActions.GET_TASKS),
 switchMap(() =>
  this.taskService.GetTasks().pipe(map(data => {
    return data;
  },
    error => console.log(error)
 )))
)

以下是固定示例:Stackblizt