Element Plus предоставляет встроенную поддержку для работы с иконками, включая возможность использовать SVG-иконки напрямую, что даёт гибкость в настройке внешнего вида компонентов и позволяет сохранять высокое качество отображения на любых устройствах.
Для работы с SVG-иконками в Element Plus чаще всего используют
библиотеку @element-plus/icons-vue. Каждая иконка
представлена отдельным компонентом, что позволяет легко импортировать
только нужные элементы:
import { Edit, Delete } from '@element-plus/icons-vue';
После импорта иконки можно использовать в любом компоненте Vue через тег:
Редактировать
В примере компонент вставляется
внутрь кнопки, что позволяет полностью контролировать его
позицию, размер и стиль.
Element Plus не ограничивается только встроенными иконками. Можно импортировать собственные SVG как компоненты:
Добавить
CustomIcon.vue может быть оформлен следующим образом:
Использование fill="currentColor" позволяет SVG
наследовать цвет текста родительского элемента, что
делает иконку полностью интегрированной с темами Element Plus.
Размер и цвет SVG-иконок можно задавать через стили CSS или пропсы компонентов:
Также возможна установка размера через глобальные классы:
.icon-large {
font-size: 32px;
color: #67C23A;
}
Использование CSS классов удобно при создании унифицированной системы иконок на сайте.
Многие компоненты Element Plus имеют проп icon, который
принимает как имя встроенной иконки, так и
компонент SVG:
Сохранить
Особенности использования:
@element-plus/icons-vue.) даёт полный контроль над
визуализацией.Для динамических интерфейсов можно подключать SVG через объект или массив:
Это особенно полезно для меню, таблиц и панелей инструментов, где иконки меняются в зависимости от состояния приложения.
fill="currentColor" и
stroke="currentColor" легко адаптируются под темы и
цветовые схемы..el-button svg {
transition: transform 0.3s;
}
.el-button:hover svg {
transform: scale(1.2);
}
@element-plus/icons-vue для стандартных операций.currentColor для
совместимости с темами.