У меня есть форма, которая загружает информацию пользователя из BehaviorSubject. Если я отредактирую любой ввод в этой форме и уйду со страницы БЕЗ отправки, пользовательская информация обновляется в теме независимо от этого.
Я не понимаю, почему тема обновляется, когда я не вызывал next () для объекта BehaviorSubject.
=== ПРЕДМЕТ КЛАССА ===
userDataReceiver$: Observable<UserModel>;
private userDataObserver = new BehaviorSubject(null);
constructor() {
this.userDataReceiver$ = this.userDataObserver.asObservable();
}
sendUserDataToSubscriber(data: UserModel) {
this.userDataObserver.next(data);
}
=== ПОЛЬЗОВАТЕЛЬСКИЙ КЛАСС ===
userDataReceiver: Subscription;
ngOnInit() {
this.userDataReceiver = this.observerService.userDataReceiver$
.subscribe(res => this.user = res);
}
ngOnDestroy() {
this.userDataReceiver.unsubscribe();
}
this.user используется в форме на html-странице для загрузки / сохранения пользовательских данных. Если ввод редактируется на html-странице без сохранения формы, переход от страницы по-прежнему приведет к обновлению объекта пользователя. При возврате на html-страницу отобразится обновленный пользовательский ввод.