当一个动作被分派时做一些事情

Eli*_*hen 5 angular ngxs

假设我们有一个 action SyncUserData,它返回监听数据库变化的 observable 。每当有变化时,动作就会调度 action new PatchUserData(newData)

SyncUserData行动被分派(仅一次)从ngxsOnInit国家。

在不同的部分(例如,组件)中,每当操作PatchUserData正在调度时,我都想做一些事情。像这样的东西:

this.store.onDispatch(PatchUserData).subscribe();
Run Code Online (Sandbox Code Playgroud)

我在源代码中查找了一下,但没有找到与我的示例类似的内容。

Gar*_*son 3

直接订阅状态的另一种方法是使用 NGXS 操作流,以便在分派/完成特定操作时收到通知,请参阅操作处理程序的文档。

来自官方文档:

@Component({ ... })
export class CartComponent {
  constructor(private actions$: Actions) {}

  ngOnInit() {
    this.actions$.pipe(ofActionSuccessful(CartDelete)).subscribe(() => alert('Item deleted'));
  }
}
Run Code Online (Sandbox Code Playgroud)