Spec-Zone.ru › Valibot

brand

Создаёт действие преобразования с брендом.

const Action = v.brand<TInput, TName>(name);

Обобщения

  • TInput extends any
  • TName extends BrandName

Параметры

  • name TName

Объяснение

brand позволяет добавить бренд к выходному типу схемы с помощью name. Это гарантирует, что данные считаются допустимыми, только если они были проверены определённой схемой с брендом.

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

  • Action BrandAction<TInput, TName>

Примеры

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

Схема фрукта с брендом

Схема, которая гарантирует, что принимаются только прошедшие проверку фрукты.

// Create schema and infer output type
const FruitSchema = v.pipe(v.object({ name: v.string() }), v.brand('Fruit'));
type FruitOutput = v.InferOutput<typeof FruitSchema>;

// This works because output is branded
const apple: FruitOutput = v.parse(FruitSchema, { name: 'apple' });

// But this will result in a type error
const banana: FruitOutput = { name: 'banana' };

Связанные API

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

Схемы

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

Методы

pipe

Вспомогательные функции

isOfKind, isOfType

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

Spec-Zone.ru

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