Перейти к основному содержимому

AsyncValidatorFn

type AsyncValidatorFn<T> = (value, options?) => Promise<ValidationError | null>;

Defined in: core/types/index.ts:81

Асинхронная функция валидации

Type Parameters

T

T = FormValue

Parameters

value

T

Значение для валидации

options?

AsyncValidatorOptions

Опции валидации (опционально)

Returns

Promise<ValidationError | null>

Promise с ошибкой валидации или null если значение валидно

Example

// Простой валидатор (без поддержки отмены)
const emailExists: AsyncValidatorFn<string> = async (value) => {
const exists = await checkEmail(value);
return exists ? { code: 'exists', message: 'Email already exists' } : null;
};

// Валидатор с поддержкой отмены
const emailExistsAbortable: AsyncValidatorFn<string> = async (value, options) => {
const exists = await fetch(`/api/check-email?email=${value}`, {
signal: options?.signal // Передаём signal в fetch для отмены запроса
});
return exists ? { code: 'exists', message: 'Email already exists' } : null;
};