FormObserver
Defined in: core/utils/form-observer.ts:105
FormObserver - мониторинг изменений в форме
Полезен для:
- Отладки сложных форм
- Логирования изменений для аудита
- Синхронизации с внешними системами
Example
const observer = new FormObserver(form, {
enableLogging: true,
eventTypes: ['value', 'errors']
});
// Подписка на события
const unsubscribe = observer.subscribe((event) => {
console.log(`${event.type} at ${event.path}:`, event.newValue);
});
// Включить трассировку
const disposeTracing = observer.enableTracing();
// Cleanup
unsubscribe();
disposeTracing();
Type Parameters
T
T extends FormFields
Constructors
Constructor
new FormObserver<T>(form, options?): FormObserver<T>;
Defined in: core/utils/form-observer.ts:114
Parameters
form
Форма для наблюдения
options?
Опции observer
Returns
FormObserver<T>
Methods
dispose()
dispose(): void;
Defined in: core/utils/form-observer.ts:384
Очистить все подписки и disposers
Returns
void
enableTracing()
enableTracing(): () => void;
Defined in: core/utils/form-observer.ts:161
Включить трассировку формы
Подписывается на изменения основных сигналов формы и вызывает listeners при каждом изменении
Returns
Функция для отключения трассировки
() => void
Example
const dispose = observer.enableTracing();
// Позже, для отключения
dispose();
subscribe()
subscribe(callback): () => void;
Defined in: core/utils/form-observer.ts:140
Подписаться на события изменения
Parameters
callback
Функция обработки события
Returns
Функция отписки
() => void
Example
const unsubscribe = observer.subscribe((event) => {
// Отправить событие в analytics
analytics.track('form_change', event);
});
watchField()
watchField(path): () => void;
Defined in: core/utils/form-observer.ts:276
Наблюдать за конкретным полем
Parameters
path
string
Путь к полю
Returns
Функция для отключения наблюдения
() => void
Example
// Наблюдать за полем email
const dispose = observer.watchField('email');