looseTupleAsync
Создает схему нестрогого кортежа.
const Schema = v.looseTupleAsync<TItems, TMessage>(items, message);
Дженерики
TItemsextends TupleItemsAsyncTMessageextends ErrorMessage<LooseTupleIssue> | undefined
Параметры
itemsTItemsmessageTMessage
Описание
С помощью looseTuplAsynce вы можете валидировать тип входных данных и проверять, соответствует ли содержимое items. Если входные данные не являются массивом, вы можете использовать message для настройки сообщения об ошибке.
Отличие от
tupleAsyncзаключается в том, что эта схема включает неизвестные элементы в выходные данные.
Возвращаемое значение
SchemaLooseTupleSchemaAsync<TItems, TMessage>
Примеры
Следующие примеры показывают, как можно использовать looseTupleAsync. Дополнительные примеры и пояснения см. в руководстве по массивам.
Кортеж из числа и email
Схема для валидации нестрогого кортежа с одним числом и одним сохраненным адресом электронной почты.
import { isEmailPresent } from '~/api';
const TupleSchema = v.looseTupleAsync([
v.number(),
v.pipeAsync(
v.string(),
v.email(),
v.checkAsync(isEmailPresent, 'The email is not in the database.')
),
]);
Связанные темы
Следующие API можно комбинировать с looseTupleAsync.
Схемы
any, array, bigint, blob, boolean, custom, date, enum, exactOptional, file, function, instance, intersect, lazy, literal, looseObject, map, nan, never, nonNullable, nonNullish, nonOptional, null, nullable, nullish, number, object, objectWithRest, optional, picklist, promise, record, set, strictObject, strictTuple, string, symbol, tuple, 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, mapAsync, nonNullableAsync, nonNullishAsync, nonOptionalAsync, nullableAsync, nullishAsync, objectAsync, objectWithRestAsync, optionalAsync, parseAsync, parserAsync, partialCheckAsync, pipeAsync, rawCheckAsync, rawTransformAsync, recordAsync, safeParseAsync, safeParserAsync, setAsync, strictObjectAsync, strictTupleAsync, transformAsync, tupleAsync, tupleWithRestAsync, unionAsync, variantAsync
© Fabian Hiller
Licensed under the MIT License.
https://valibot.dev/api/looseTupleAsync/