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

validateGroup()

function validateGroup<TForm, TScope>(
scopePath,
validator,
options?): void;

Defined in: core/validation/core/validate-group.ts:42

Зарегистрировать cross-field валидатор для scope-поддерева формы.

Первый аргумент — путь до scope. Для всей формы передаётся сам path (он же FieldPath<TForm>), для поддерева — конкретное вложенное поле.

Type Parameters

TForm

TForm

TScope

TScope = TForm

Parameters

scopePath

FieldPathNode<TForm, TScope, unknown> | FieldPath<TForm>

validator

GroupValidator<TForm, TScope>

options?

ValidateGroupOptions<TForm>

Returns

void

Example

// Scope = вся форма
validateGroup(path, (scope, _root) => {
const v = scope.getValue();
if (v.initialPayment > v.propertyValue) {
return { code: 'tooHigh', message: 'Взнос > стоимости' };
}
return null;
}, { targetField: path.initialPayment });

// Scope = поддерево
validateGroup(path.personalData, (scope, _root) => {
if (scope.lastName.value.value === scope.firstName.value.value) {
return { code: 'sameNames', message: 'Фамилия = Имя?' };
}
return null;
});