Angular 角度重复@effect:检索有效负载时出错
我在使用ngrx/@effect检索有效负载时遇到一些问题Angular 角度重复@effect:检索有效负载时出错,angular,typescript,redux,ngrx,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( switch
//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)
)))
);
//删除任务
@效果({dispatch:false})
deleteTasks$:Observable=this.actions.ofType(fromActions.DELETE\u TASK)
.map((操作:fromActions.DeleteTaskAction)=>action.payload)
.烟斗(
开关映射((有效负载)=>
this.taskService.DeleteTask(有效负载).pipe(映射(数据=>{
返回数据;
},
error=>console.log(错误)
)))
);
错误:此.actions.of类型(…).map不是函数
这是这个项目,
非常感谢你。
Andrea您应该在管道函数中使用type方法。 例如:
@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)
)))
)
@Effect({dispatch:false})
getTasks$:Observable=this.actions.pipe(
类型(来自Actions.GET_任务),
开关映射(()=>
this.taskService.GetTasks().pipe(映射(数据=>{
返回数据;
},
error=>console.log(错误)
)))
)
下面是一个固定的示例:这是什么。操作?谢谢。唯一的问题是它运行了两次。您是否可以更精确地说明什么是“运行两次”?如果在DeleteTask服务中添加一个警报,您将看到它运行了两次,另外,如果您检查控制台,您可以看到它运行两次http请求,这是因为您订阅了两次效果。在AppModule u r中,在“EffectsModule.forRoot([TaskEffects])”行中订阅。我可以稍后修复我的代码以向您显示问题的确切位置。您好,我在两次通话中仍然遇到问题。。。。同时,我把你的问题说成“完成”