У меня проблема с подпиской, которая, кажется, не работает, поскольку она скрыта от детей.
Архитектура примерно такая: у меня есть форма, отображающая списокпользователи.Эта форма содержит скрытый компонент (UpdateUserComponent
), такой как
<app-update-user (navigation)="navigate($event)" [user]="user" *ngIf="feature === 'update'"></app-update-user>
, который будет отображаться в зависимости от действий пользователя.UpdateUserComponent
содержит только логику для отправки действия UpdateUser
и выглядит следующим образом:
<app-form-user [user]="user" [roles]="roles" [canHandleRoles]="canHandleRoles" (fromForm)="fromForm($event)"></app-form-user>
Таким образом, он отобразит FormUserComponent
, который является формой для обновления пользователя.
Я хотел подписаться на NGRX-Action
, который отправляется из Эффектов после успешного обновления пользователя, и я поместил этот код:
constructor(
private actions: ActionsSubject) {
}
this.subscription.add(this.actions.pipe(
filter((action: Action) => action.type === UsersActionTypes.UserUpdated)
).subscribe(action => {
//here do stuff needed when the user has been successfully updated
}));
Внутри UpdateUserComponent
, отца FormUserComponent
, но он не может перехватить какое-либо действие, а тот же код внутри FormUserComponent
может успешно перехватить действие.Кажется, что тот факт, что UpdateUserComponent
находится в тени, потому что он является отцом FormUserComponent