Spec-Zone.ru › Valibot

maxGraphemes

Создает действие проверки максимального количества графем.

const Action = v.maxGraphemes<TInput, TRequirement, TMessage>(
  requirement,
  message
);

Параметры типов

  • TInput extends string
  • TRequirement extends number
  • TMessage extends ErrorMessage<MaxGraphemesIssue<TInput, TRequirement>> | undefined

Параметры

  • requirement TRequirement
  • message TMessage

Пояснение

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

Если вы ищете аналог .length в JavaScript для проверки максимальной длины, используйте вместо него maxLength. Если вы хотите считать каждую кодовую точку Unicode одним символом — например, чтобы обеспечить соблюдение правил длины пароля из NIST SP 800-63B или соответствовать LENGTH() в PostgreSQL и SQLite либо CHAR_LENGTH() в MySQL, — используйте вместо этого maxCodePoints.

Подсказка: количество символов в одной графеме не ограничено. Чтобы установить более строгое ограничение, можно использовать maxGraphemes вместе с maxLength, maxCodePoints или maxBytes.

Возвращает

  • Action MaxGraphemesAction<TInput, TRequirement, TMessage>

Примеры

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

Схема с максимальным количеством графем

Схема для проверки строки, содержащей не более 8 графем.

const MaxGraphemesSchema = v.pipe(
  v.string(),
  v.maxGraphemes(8, 'The string must not exceed 8 graphemes.')
);

Связанные API

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

Схемы

any, custom, string

Методы

pipe

Действия

maxCodePoints, maxLength

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

isOfKind, isOfType

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

Spec-Zone.ru

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