Spec-Zone.ru › Valibot

union

Создаёт схему объединения.

Рекомендуем прочитать руководство по объединениям перед использованием этой функции схемы.

const Schema = v.union<TOptions, TMessage>(options, message);

Обобщения

  • TOptions extends UnionOptions
  • TMessage extends ErrorMessage<UnionIssue<InferIssue<TOptions[number]>>> | undefined

Параметры

  • options TOptions
  • message TMessage

Пояснение

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

Если некорректное входное значение можно однозначно отнести к одной из схем на основе типа данных, возвращается результат этой схемы. В противном случае возвращается общая проблема, содержащая проблемы каждой схемы в виде вложенных проблем. Это особый случай в библиотеке, поскольку проблемы union могут противоречить друг другу.

Возвращает

  • Schema UnionSchema<TOptions, TMessage>

Примеры

В следующих примерах показано, как можно использовать union.

Схема URL

Схема для проверки URL или пустой строки.

const UrlSchema = v.union([v.pipe(v.string(), v.url()), v.literal('')]);

Схема числа

Схема для проверки числа или десятичной строки.

const NumberSchema = v.union([v.number(), v.pipe(v.string(), v.decimal())]);

Схема даты

Схема для проверки Date или временной метки ISO.

const DateSchema = v.union([v.date(), v.pipe(v.string(), v.isoTimestamp())]);

Связанные API

Следующие API можно использовать вместе с union.

Схемы

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

Методы

assert, config, fallback, getDefault, getDefaults, getFallback, getFallbacks, is, message, parse, parser, pipe, safeParse, safeParser

Действия

args, base64, bic, brand, bytes, check, checkItems, codePoints, creditCard, cuid2, decimal, description, digits, domain, email, emoji, empty, endsWith, entries, everyItem, excludes, filterItems, findItem, finite, flavor, graphemes, gtValue, guard, hash, hexadecimal, hexColor, imei, includes, integer, ip, ipv4, ipv6, isbn, isrc, isoDate, isoDateTime, isoDateTimeSecond, isoTime, isoTimeSecond, isoTimestamp, isoWeek, ksuid, length, ltValue, mac, mac48, mac64, mapItems, maxBytes, maxCodePoints, maxEntries, maxGraphemes, maxLength, maxSize, maxValue, maxWords, metadata, mimeType, minBytes, minCodePoints, minEntries, minGraphemes, minLength, minSize, minValue, minWords, multipleOf, nanoid, nonEmpty, notBytes, notCodePoints, notEntries, notGraphemes, notLength, notSize, notValue, notValues, notWords, octal, parseJson, partialCheck, rawCheck, rawTransform, readonly, reduceItems, regex, returns, rfcEmail, safeInteger, size, slug, someItem, sortItems, startsWith, stringifyJson, title, toCamelCase, toKebabCase, toLowerCase, toMaxValue, toMinValue, toPascalCase, toSnakeCase, toUpperCase, transform, trim, trimEnd, trimStart, ulid, url, uuid, value, values, words

Утилиты

entriesFromList, isOfKind, isOfType

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

Spec-Zone.ru

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