当我添加.map(...)
通知服务和“关闭”对话框功能时,出现错误。
设置此方法的正确方法是什么? 这是我的效果
@Effect()
addNewUser$ = this.actions$.pipe(
ofType(actions.UserActionTypes.addNewUser),
mergeMap((user: actions.addNewUser) =>
this.userService.createUser(user.user).pipe(
map(() => {
new actions.LoadUsers(),
this.notificationService.success("User added successfully!"); <--- added
this.dialogRef.closeAll(); <--- added
}),
catchError(error => of(new actions.Error(error.error)))
)
)
);
我遇到错误
core.js:6014错误错误:效果“ UserEffects.addNewUser $”调度了无效操作:未定义
TypeError:操作必须是对象
有帮助吗? thnx
答案 0 :(得分:1)
就像错误提示一样,您应该返回一个动作。
map
没有返回值,因此它将返回undefined
-导致错误。
尝试以下操作:
this.notificationService.success("User added successfully!"); <--- added
this.dialogRef.closeAll(); <--- added
return new actions.LoadUsers();