У меня есть форма внутри службы:
this.settingsForm = this.formBuilder.group({
names: this.formBuilder.array([]),
globalIDs: this.formBuilder.array([]),
topics: this.formBuilder.array([]),
emails: this.formBuilder.array([]),
description: ''
});
и получатель для удобства -
get description(): FormControl{
return this.settingsForm.get('description') as FormControl;
}
в какой-то директиве я ввожу службу и у меня есть вход, который прикреплен кэтот контроль.html-
<textarea matInput
[formControl]="settingsDataService.description">
</textarea>
В директиве у меня есть прослушиватель:
ngOnInit() {
this.listenToSearchInput();
}
listenToSearchInput() {
this.settingsDataService.description.valueChanges.pipe(
distinctUntilChanged(),takeUntil(this.descriptionDestroy))
.subscribe(value => {
//DO SOMETHING
});
}
, но когда я набираю текстовую область, мой абонент не вызывается.
Может быть, это желательно, но после вызова listenToSearchInput () в сервисе после получения ответа от сервера я заполняю описание: -
this.settingsForm.patchValue({description:description});
В чем может быть причина