с такой задачей. Есть форма, реализованная реактивным образом и большое количество контролов, которые подключены к FormGroup, через formControlName. Так же есть код, который делает какую-то работу, когда форма меняется (form.valueChanges.subscribe(...)). Вопрос вот какой. На изменения в некоторых контролах надо реагировать сразу (с этим проблем нет и это нормальное поведение, когда ты подписываешь к изменению в FormGroup), а вот другие контролы, должны вызывать изменения в FormGroup с заданным DebounceTime. Т.е. для примера: есть контрол name, и когда я ввожу в нём что-то, то он не должен моментально заставлять обновляться FormGroup и кидать изменения в виде изменений для valueChanges. Это можно легко написать для отдельного контрола применив в pipe оператор debounceTime. Но как такое поведение сделать, когда контрол работает совместно с FormGroup не совсем понятно.Кто-то делал что-то подобное? Спасибо
а если два subscribe с фильтром для определеных контролов?
Мне пришла идея объединить контролы, с которыми нужно работать как с пакетами, в отдельную формГруппу и поместить её внутри глобальной формГруппы, например, globalFg = new FormGroup({ globalCtrl1: new FormControl(), localFg: new FormGroup({ localCtrl1: new FormControl() }) }); Тогда можно будет подписаться на специальную группу контролов через this.globalFg.get('localFg).valueChanges.subscribe()
Обсуждают сегодня