SubnavigationBar

Горизонтальная панель с кнопками-ссылками для быстрой навигации между подразделами или управления контентом. Используется как элемент вторичной навигации внутри раздела. Поддерживает горизонтальную прокрутку контента с индикацией наличия скрытых элементов (стрелки навигации).

Загружается...
  • Переключение между связанными подразделами.
  • Активации фильтров или сортировок.
  • Быстрый доступ к модальным окнам.
  • Группировка действий в компактном пространстве.

fixed={true} — равномерно распределяет пространство между элементами:

  • Автоматически отключает горизонтальную прокрутку.
  • Требует точного контроля за содержимым (рекомендуется 2-5 элементов).
  • Для длинных текстов используйте textLevel у SubnavigationButton.

fixed={false} (по умолчанию) — активирует адаптивную прокрутку. Поддерживает свойства из HorizontalScroll:

  • showArrows — управление видимостью стрелок;
  • getScrollToLeft/getScrollToRight — кастомная логика прокрутки;
  • scrollAnimationDuration — скорость анимации.
  • Список элементов реализован с использованием семантического тега ul.
  • Элементы списка оборачиваются в семантические теги li.

Кнопка/ссылка для использования внутри SubnavigationBar. Предназначена для навигации между подразделами или управления контентом (активация фильтров, открытие модальных окон).

Загружается...

selected — выделяет кнопку как активную. Используйте для индикации текущего раздела или применённого фильтра.

Загружается...

Задается свойством mode:

  • primary — первичный вид для привлечения внимания;
  • outline — вид с обводкой;
  • tertiary — третичный вид без фона.

Задается свойством appearance.

Загружается...
Загружается...

Размер самой кнопки задается свойством size:

  • s — компактный;
  • m — стандартный;
  • l — увеличенный.

textLevel — отдельно настраивает размер текста (1 — крупный, 3 — мелкий). Полезно в режиме fixed у родительского SubnavigationBar.

Загружается...
  • before — иконка перед текстом (рекомендуемый размер 24px).
  • after — счётчик или бейдж (рекомендуется использовать только Counter size="s" или Badge).
  • chevron — добавляет стрелку-индикатор справа.
Загружается...
СвойствоОписание
fixedboolean

Отключение возможности прокручивания компонента по горизонтали.

По умолчанию: false
getRootRefRef<HTMLDivElement>
По умолчанию: -
getScrollToLeftScrollPositionHandler

Функция для расчета величины прокрутки при нажатии на левую стрелку.

По умолчанию: (x) => x - 240
getScrollToRightScrollPositionHandler

Функция для расчета величины прокрутки при нажатии на правую стрелку.

По умолчанию: (x) => x + 240
scrollAnimationDurationnumber

Длительность анимации скролла.

По умолчанию: -
showArrowsboolean | "always"

Показывать ли стрелки.

По умолчанию: true
СвойствоОписание
activatedboolean

Позволяет управлять activated-состоянием извне.

По умолчанию: -
activeClassNamestring

Deprecated: Since 7.3.0.

Свойство устарело и будет удалено в v8, используйте свойство activeMode.

По умолчанию: -
activeEffectDelaynumber

Длительность показа active-состояния.

По умолчанию: -
activeModeStateModeLiteral

Стиль подсветки active-состояния. Если передать произвольную строку, она добавится как css-класс во время active.

По умолчанию: -
afterReactNode

Рекомендуется использовать только <Counter size="s" /> или <Badge />.

По умолчанию: -
appearance"accent" | "neutral"

Тип внешнего вида кнопки.

По умолчанию: accent
baseClassNamestring | false

Deprecated: Since 7.3.0.

Свойство устарело и будет удалено в v8, используйте свойство className.

По умолчанию: -
baseStyleCSSProperties

Deprecated: Since 7.3.0.

Свойство устарело и будет удалено в v8, используйте свойство style.

По умолчанию: -
beforeReactNode

Рекомендуется использовать только иконки с размером 24.

По умолчанию: -
borderRadiusMode"auto" | "inherit"

Задает border-radius элементу В режиме auto на маленьких экранах border-radius: 0, иначе определяется токеном --vkui--size_border_radius--regular.

По умолчанию: -
chevronboolean

Нужно ли отображать иконку "chevron".

По умолчанию: -
ComponentElementType<any, keyof IntrinsicElements>
По умолчанию: -
focusVisibleModeFocusVisibleMode

Стиль аутлайна focus visible. Если передать произвольную строку, она добавится как css-класс при :focus-visible

По умолчанию: -
getRootRefRef<HTMLElement>
По умолчанию: -
hasActiveboolean

Указывает, должен ли компонент реагировать на active-состояние.

По умолчанию: -
hasHoverboolean

Указывает, должен ли компонент реагировать на hover-состояние.

По умолчанию: -
hasHoverWithChildrenboolean

Позволяет родительскому компоненту иметь hovered-cостояние при наведении на любой дочерний элемент. По умолчанию состояние hovered у родителя сбрасывается.

Присваивается родителькому компоненту.

По умолчанию: -
hoverClassNamestring

Deprecated: Since 7.3.0.

Свойство устарело и будет удалено в v8, используйте свойство hoverMode.

По умолчанию: -
hoveredboolean

Позволяет управлять hovered-состоянием извне.

По умолчанию: -
hoverModeStateModeLiteral

Стиль подсветки hover-состояния. Если передать произвольную строку, она добавится как css-класс во время hover.

По умолчанию: -
mode"primary" | "tertiary" | "outline"

Стиль отображения кнопки.

По умолчанию: primary
selectedboolean

Выбранное состояние.

По умолчанию: -
size"s" | "m" | "l"

Размер кнопки.

По умолчанию: m
textLevel"1" | "2" | "3"

Размер шрифта. Этим свойством рекомендуется пользоваться, чтобы отрегулировать размер шрифта у кнопок в <SubnavigationBar fixed />.

По умолчанию: 1
unlockParentHoverboolean

Позволяет родительскому компоненту показывать hovered-состояние при наведении на текущий дочерний компонент.

Присваивается дочернему компоненту.

По умолчанию: -