Компонент Drawer представляет собой панель, которая выдвигается с одной из сторон экрана и используется для отображения дополнительного содержимого, не перегружая основное пространство интерфейса. В библиотеке Element Plus Drawer реализован с гибкой настройкой позиции, размеров, поведения и анимаций.
Для использования Drawer необходимо импортировать компонент и управлять его видимостью через реактивное состояние:
Открыть Drawer
Содержимое панели Drawer
Ключевые моменты:
visible.sync — реактивное свойство для управления
открытием и закрытием Drawer. Использование .sync
обеспечивает двустороннюю связь состояния.title — заголовок панели.direction — направление выдвижения: rtl
(справа налево), ltr (слева направо), ttb
(сверху вниз), btt (снизу вверх).size — ширина или высота панели в зависимости от
направления, может быть задано в процентах или пикселях.Drawer поддерживает динамическое изменение размеров:
Контент панели снизу вверх
Направления:
rtl — панель выезжает справа.ltr — панель выезжает слева.ttb — панель выезжает сверху.btt — панель выезжает снизу.Размеры:
size="50%" задаёт половину ширины
или высоты родительского контейнера.size="400px" задаёт точный
размер.Drawer предоставляет несколько событий, которые позволяют управлять поведением панели:
open — срабатывает при открытии панели.opened — после полной анимации открытия.close — при закрытии панели.closed — после полной анимации закрытия.Пример использования событий:
Содержимое панели
Drawer позволяет добавлять футер с кнопками, например, для действий “Сохранить” и “Отмена”:
Основной контент
Отмена
Сохранить
Особенности футера:
footer для кастомного
контента.Drawer поддерживает закрытие по клику на overlay или через крестик в заголовке:
:modal-append-to-body="true" — панель и overlay
добавляются в тело документа, а не в родительский контейнер.:close-on-press-escape="true" — закрытие по нажатию
клавиши Escape.:close-on-click-modal="true" — закрытие по клику на
затемнённый фон.Пример:
Контент Drawer
Drawer поддерживает ленивую загрузку, что полезно для тяжелых компонентов или форм:
destroy-on-close — удаляет содержимое при закрытии,
экономя ресурсы.Drawer часто используется для:
Комбинация разных направлений, размеров и кастомных футеров позволяет создавать сложные, интуитивно понятные интерфейсы, сохраняя при этом легкость и минимализм основного контента.