Skip to content

CdsMessages

New in v4.0

Блок сообщений под полем ввода: подсказка, пояснение или ошибка валидации. Сообщения появляются и исчезают с анимацией, поэтому строка под полем не дёргает вёрстку.

Storybook GitLab
Покрытие тестами: 100% — хорошее покрытие
API в спеках
11 / 11 пропсы, события, слоты и exposed, у которых есть тест
Тест-кейсы
18 юнит · 0 браузерных
Известные баги
7 зафиксированы тестом it.fails
Покрытие кода
100% строк · 100% ветвей замер v4.0.0-alpha.13
A11y (axe)
нарушений нет в 5 историях замер v4.0.0-alpha.11

В готовых полях блок сообщений уже встроен — пропсы messages, hint и error-messages у CdsTextInput и других контролов. Отдельный CdsMessages нужен для групп полей и собственных контролов. Для заметного уведомления на странице возьмите CdsNotification.

Вариации ​

Сообщения ​

Свойство messages принимает строку или массив строк — каждая строка станет отдельной, они не склеиваются.

Sandbox Storybook

Цвет ​

Свойство color задаёт цвет текста — берите статусные токены (status-danger-content для ошибки, status-success-content для подтверждения). Без цвета сообщения приглушены, как вспомогательный текст.

Sandbox Storybook

Появление ​

Сообщения видны только при active. Появление и скрытие анимируются, анимацию задаёт проп transition.

Sandbox Storybook

Слот ​

Слот message переопределяет отдельное сообщение и получает его текст — можно добавить иконку или ссылку. Слот default добавляет контент после всех сообщений.

Sandbox Storybook

Сценарии использования ​

Ошибка группы полей ​

У группы чекбоксов нет собственной валидации: соберите её сами и покажите результат через active. Пока выбор пуст, красное сообщение висит под группой и исчезает с первым же чекбоксом.

Sandbox Storybook

API ​

Пропсы

ИмяТипПо умолчаниюОписание
activeboolean | undefined—Активное состояние
activeColorstring | undefined—Цвет компонента, когда он находится в активном состоянии
baseColorstring | undefined—Цвет неактивного компонента
bgColorstring | undefined—Цвет фона компонента
colorstring | undefined—Цвет компонента
hideMessagesboolean | undefined—Скрыть сообщения под полем ввода
messagesstring | readonly string[] | undefined[]Сообщения для отображения под полем ввода
textColorstring | undefined—Цвет текста компонента
transitionstring | boolean | (TransitionProps & { component?: Component | undefined; }) | { component: Component; leaveAbsolute: boolean; group: boolean; } | null | undefined{ component: slide-transition-y, leaveAbsolute: true, group: true }Анимация перехода

Слоты

ИмяТипОписание
defaultanyСобственный вид всего списка сообщений вместо стандартного
messageCdsMessageSlotШаблон одного сообщения. В параметрах — текст сообщения