Делайте больше с меньшими затратами
Большинство современных фреймворков JavaScript включают стили несколькими способами с момента появления популярных препроцессоров CSS. Вроде Сас. Эти препроцессоры являются ответами на распространенные вопросы, такие как:
- Как поделиться стилями в приложении?
- Как создавать стили с меньшим количеством запутанных строк кода?
Введите миксины.
В разработке программного обеспечения Mixin может относиться к одной из двух вещей:
- узор/объект
- правило препроцессора CSS
Правило препроцессора примеси: помогает сделать стили модульными и общими. Например, при стилизации списка фруктов в приложении. Апельсины и яблоки можно отличить по цвету. Однако, поскольку они оба являются фруктами, они также могут иметь некоторые общие стили.
Миксин fruit
можно создать для общих стилей с помощью простого объявления в файле scss: @mixin fruit {}
. Включение стилей fruit
в класс стиля так же интуитивно понятно: @include fruit
. С несколькими примесями вы также можете создавать и стилизовать смешанные фрукты, включающие множество примесей.
Преимущество:по мере того, как стили разрастаются и становятся более конкретными, списки классов в html-элементах отпадают.
Шаблон примеси: позволяет объектам JavaScript (JS) получать дополнительную функциональность от одного или нескольких объектов. Без наследования классов.
Почему это важно?
В JS вы не можете расширить класс несколькими классами. Например, если вы хотите создать класс смешанных фруктов, который имеет качества обоих классов Apples
и Oranges
. Вы не сможете расширить оба класса. Однако вы можете создать миксин, который добавит эти качества классу смешанных фруктов.
Mixin — это просто объектный литерал — ничего особенного. Затем с помощью Object.assign()
вы можете скопировать свойства и методы из миксина в prototype
property класса смешанных фруктов.
🤔 Основные понятия те же: сокращать, повторно использовать, перерабатывать? Просто разные контексты.
Ресурсы и дополнительная литература: