tupleAsync
Создает схему кортежа.
const Schema = v.tupleAsync<TItems, TMessage>(items, message);
Дженерики
TItemsextends TupleItemsAsyncTMessageextends ErrorMessage<TupleIssue> | undefined
Параметры
itemsTItemsmessageTMessage
Объяснение
С помощью tupleAsync вы можете валидировать тип данных входных данных и соответствие содержимого items. Если входные данные не являются массивом, вы можете использовать message для настройки сообщения об ошибке.
Эта схема удаляет неизвестные элементы. Выходные данные будут содержать только те элементы, которые вы укажете. Чтобы включить неизвестные элементы, используйте
looseTupleAsync. Чтобы возвращать ошибку для неизвестных элементов, используйтеstrictTupleAsync. Чтобы включить и валидировать неизвестные элементы, используйтеtupleWithRestAsync.
Возвращаемое значение
SchemaTupleSchemaAsync<TItems, TMessage>
Примеры
Следующие примеры показывают, как можно использовать tupleAsync. Дополнительные примеры и объяснения см. в руководстве по массивам.
Кортеж из числа и email
Схема для валидации кортежа с одним числом и одним сохраненным адресом электронной почты.
import { isEmailPresent } from '~/api';
const TupleSchema = v.tupleAsync([
v.number(),
v.pipeAsync(
v.string(),
v.email(),
v.checkAsync(isEmailPresent, 'The email is not in the database.')
),
]);
Связанные темы
Следующие API могут быть объединены с tupleAsync.
Схемы
any, array, bigint, blob, boolean, custom, date, enum, exactOptional, file, function, instance, intersect, lazy, literal, looseObject, looseTuple, map, nan, never, nonNullable, nonNullish, nonOptional, null, nullable, nullish, number, object, objectWithRest, optional, picklist, promise, record, set, strictObject, strictTuple, string, symbol, tupleWithRest, undefined, undefinedable, union, unknown, variant, void
Методы
config, getDefault, getFallback
Действия
check, checkItems, brand, description, empty, everyItem, excludes, filterItems, findItem, flavor, guard, includes, length, mapItems, maxLength, metadata, minLength, nonEmpty, notLength, partialCheck, rawCheck, rawTransform, readonly, reduceItems, someItem, sortItems, title, transform
Утилиты
entriesFromList, isOfKind, isOfType
Асинхронные
arrayAsync, checkAsync, customAsync, exactOptionalAsync, fallbackAsync, getDefaultsAsync, getFallbacksAsync, intersectAsync, lazyAsync, looseObjectAsync, looseTupleAsync, mapAsync, nonNullableAsync, nonNullishAsync, nonOptionalAsync, nullableAsync, nullishAsync, objectAsync, objectWithRestAsync, optionalAsync, parseAsync, parserAsync, partialCheckAsync, pipeAsync, rawCheckAsync, rawTransformAsync, recordAsync, safeParseAsync, safeParserAsync, setAsync, strictObjectAsync, strictTupleAsync, transformAsync, tupleWithRestAsync, unionAsync, variantAsync
© Fabian Hiller
Licensed under the MIT License.
https://valibot.dev/api/tupleAsync/