|
Рубрика:
Разработка /
Архитектура фронтенда
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
ВИЗИТКА
Егор Айнюков, ведущий разработчик AppsMax.ru
Две темы — один интерфейс: как не удвоить Vue/Laravel-приложение
Разбираем архитектуру второй темы в зрелом Vue/Laravel-приложении: что сработало, что стало сложнее и где эта схема не подходит.
Задача: дать выбор, не получить два продукта
У действующего веб-приложения уже был тёмный кабинет: общий shell, десятки рабочих маршрутов, формы, таблицы, редакторы, выдвижные панели и отдельные публичные mini-app. Потребовалось добавить светлый интерфейс, но сохранить прежний вариант по умолчанию и не менять расположение функций.
На первый взгляд задача сводится к замене нескольких цветов. На практике тема затрагивает браузерные поля, тени, границы, фокус, служебные статусы, модальные окна, адаптивную навигацию и момент первого отображения страницы. Если сделать второй набор компонентов, то каждое следующее изменение придётся переносить в две реализации. Если ограничиться одним CSS-файлом с переопределениями, часть старых жёстко заданных цветов останется нечитаемой.
<...>
Ключевые слова: Vue.js, Laravel, тёмная тема / светлая тема, CSS custom properties, фронтенд-архитектура, веб-доступность, регрессионное тестирование, OAuth
Полную версию статьи читайте в журнале Подпишитесь на журнал
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|