arrayAsync
Создает схему массива.
const Schema = v.arrayAsync<TItem, TMessage>(item, message);
Дженерики
TItemextends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>TMessageextends ErrorMessage<ArrayIssue> | undefined
Параметры
itemTItemmessageTMessage
Объяснение
С помощью arrayAsync вы можете валидировать тип входных данных. Если входные данные не являются массивом, вы можете использовать message для настройки сообщения об ошибке.
Если ваш массив имеет фиксированную длину, рассмотрите возможность использования
tupleAsyncдля более точной типизации.
Возвращаемое значение
SchemaArraySchemaAsync<TItem, TMessage>
Примеры
Следующие примеры показывают, как можно использовать arrayAsync.
Схема сохраненных email-адресов
Схема для валидации массива сохраненных email-адресов.
import { isEmailPresent } from '~/api';
const StoredEmailsSchema = v.arrayAsync(
v.pipeAsync(
v.string(),
v.email(),
v.checkAsync(isEmailPresent, 'The email is not in the database.')
)
);
Связанные элементы
Следующие API можно комбинировать с arrayAsync.
Схемы
any, 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, 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
Асинхронные
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, tupleAsync, tupleWithRestAsync, unionAsync, variantAsync
© Fabian Hiller
Licensed under the MIT License.
https://valibot.dev/api/arrayAsync/