Angular 5 Subject <any>не получает последние данные обновления от сервисов после обновления компонента-брата - PullRequest
0 голосов
/ 22 мая 2018

Структура моего проекта:

1.Edit.component.ts
     share - folder
       2.one.component.ts
       3.two.component.ts
       Fileds - folder
         4.three.component.ts

Я использую Subject at Service для обновления данных из дочерней и общей папки компонентов общей папки и передачи данных родительскому объекту.

Он отлично работает для непосредственных компонентов общих папок.Но не для three.component.ts.Я не знаю, почему он не обновляется с трех компонентов.Но я уверен, что данные прошли сервисы правильно.

Edit.components.ts

constructor(
  private service: Service,
  private route: ActivatedRoute,
  private router: Router
) { this.updateDataFromForm(); }
updateDataFromForm() {
  this.service.formData.subscribe(data => {
    this.formData = data;
  });
}

one.component.ts, two.component.ts, three.component.ts

consturctor(private service: Service)
ngOnint() {
this.updateFormData()
}
updateFormData() {
this.formGroup['valueChanges']
.debounceTime(500)
.subscribe(data => { this.service.formUpdate(data)})
}

Service.ts

 formDataSource = new Subject<any>();
 formData = this.formDataSource.asObservable();

 formUpdate(data){
   this.formDataSource.next(data)
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...