Spec-Zone.ru › Valibot

objectAsync

Создаёт схему объекта.

const Schema = v.objectAsync<TEntries, TMessage>(entries, message);

Дженерики

  • TEntries extends ObjectEntriesAsync
  • TMessage extends ErrorMessage<ObjectIssue> | undefined

Параметры

  • entries TEntries
  • message TMessage

Объяснение

С помощью objectAsync вы можете проверить тип данных входного значения и соответствует ли содержимое entries. Если входное значение не является объектом, вы можете использовать message для настройки сообщения об ошибке.

Эта схема удаляет неизвестные записи. Выходные данные будут содержать только те записи, которые вы укажете. Чтобы включить неизвестные записи, используйте looseObjectAsync. Чтобы возвращать ошибку при наличии неизвестных записей, используйте strictObjectAsync. Чтобы включить и валидировать неизвестные записи, используйте objectWithRestAsync.

Возвращаемое значение

  • Schema ObjectSchemaAsync<TEntries, TMessage>

Примеры

Следующие примеры показывают, как можно использовать objectAsync. Дополнительные примеры и пояснения см. в руководстве по объектам.

Схема нового пользователя

Схема для валидации объекта, содержащего данные нового пользователя.

import { isEmailPresent } from '~/api';

const NewUserSchema = v.objectAsync({
  firstName: v.pipe(v.string(), v.minLength(2), v.maxLength(45)),
  lastName: v.pipe(v.string(), v.minLength(2), v.maxLength(45)),
  email: v.pipeAsync(
    v.string(),
    v.email(),
    v.checkAsync(isEmailPresent, 'The email is already in use by another user.')
  ),
  password: v.pipe(v.string(), v.minLength(8)),
  avatar: v.optional(v.pipe(v.string(), v.url())),
});

Связанное

Следующие API можно комбинировать с objectAsync.

Схемы

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, tuple, tupleWithRest, undefined, undefinedable, union, unknown, variant, void

Методы

config, getDefault, getFallback, keyof, omit, pick

Действия

brand, check, description, entries, flavor, guard, maxEntries, metadata, minEntries, notEntries, partialCheck, rawCheck, rawTransform, readonly, title, transform

Утилиты

entriesFromList, isOfKind, isOfType

Асинхронные

arrayAsync, checkAsync, customAsync, exactOptionalAsync, fallbackAsync, forwardAsync, getDefaultsAsync, getFallbacksAsync, intersectAsync, lazyAsync, looseObjectAsync, looseTupleAsync, mapAsync, nonNullableAsync, nonNullishAsync, nonOptionalAsync, nullableAsync, nullishAsync, objectWithRestAsync, optionalAsync, parseAsync, parserAsync, partialAsync, partialCheckAsync, pipeAsync, rawCheckAsync, rawTransformAsync, recordAsync, requiredAsync, safeParseAsync, safeParserAsync, setAsync, strictObjectAsync, strictTupleAsync, transformAsync, tupleAsync, tupleWithRestAsync, unionAsync, variantAsync

© Fabian Hiller
Licensed under the MIT License.
https://valibot.dev/api/objectAsync/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API