Skip to content

SDropdown

Обзор

Выпадающая панель (floating overlay) с позиционированием относительно якоря.

Usage

Открытие по клику на trigger-слот.

API

Краткий справочник props, slots и events — см. API Reference.

Guide

SDropdown позиционирует floating-панель относительно якоря из слота #trigger или внешнего reference.

  • Управление открытием — через v-model (boolean).
  • Слот #trigger получает toggle, open, triggerProps для a11y-связки с панелью.
  • Trigger может быть любым интерактивным элементом — кнопка, иконка, chip; компонент не привязан к SButton.
  • Для hover-режима включите showOnHover — панель открывается по наведению на trigger и content.
  • Общие паттерны overlay — см. Overlays.
vue
<SDropdown v-model="isOpen">
  <template #trigger="{ toggle, triggerProps }">
    <button type="button" v-bind="triggerProps" @click="toggle">Menu</button>
  </template>
  <template #content>…</template>
</SDropdown>

Props

Со стрелкой

Placement top

Match reference width

Show on hover

API Reference

Свойства

ИмяТипОписаниеПо умолчанию
placementESDropdownPlacementПредпочтительное положение панели относительно якоря.'bottom-start'
offsetnumberОтступ панели от якоря в пикселях.8
flipbooleanПереворот панели при нехватке места.true
shiftbooleanСдвиг панели вдоль оси, чтобы оставаться в viewport.false
matchReferenceWidthbooleanШирина панели равна ширине якоря.false
fitViewportbooleanОграничение размеров панели границами viewport.false
surfaceClassstringДополнительный CSS-класс поверхности панели.
teleportTostring | falseСелектор контейнера для Teleport; false — без телепорта.'body'
dismissOnClickOutsidebooleanЗакрытие по клику вне панели и якоря.true
dismissOnEscapebooleanЗакрытие по Escape.true
disabledbooleanБлокирует открытие и взаимодействие.false
referenceHTMLElement | nullDOM-элемент якоря; если не задан, используется слот trigger.null
contentIdstringid панели для aria-controls.
viewportPaddingnumberВнутренний отступ от краёв viewport при позиционировании.8
arrowbooleanПоказывает стрелку-указатель к якорю.false
showOnHoverbooleanОткрывает и закрывает панель по наведению на якорь и содержимое.false
hoverLeaveDelaynumberЗадержка перед закрытием при уходе курсора с якоря или панели, мс.100
modelValue / v-modelbooleanДвустороннее значение компонента (v-model).false

Слоты

ИмяОписание
triggerЯкорь открытия: open, toggle, triggerProps для a11y
contentСодержимое панели; resolvedPlacement — итоговая позиция