Как организовать работу с одними стилями на разных проектах?

Есть два проекта, один на vue2, второй на vue3, у каждого проекта своя команда
у этих проектов есть общие элементы дизайна - гайдлайны, кнопки, селекты и прочий ui

Требуется чтобы все одинаковые элементы были в единственном экземпляре и брались командами из одного места, для того что бы не делать их 2 раза и они были полностью идентичными

Из-за разной версии фреймворков от общих компонентов решили отказаться и ограничиться едиными стилями
Но и тут стилями все не ограничивается - нужна еще одинаковая html структура для этих элементов

Вижу решение в лоб - завести отдельный проект под это дело, для каждого ui элемента наделать стилей и импортировать в нужные компоненты, а html структуру привести к одному виду, но может вы подскажете способы по интереснее?

upd: проекты уже есть и они долгое время жили отдельно друг от друга, у каждого есть своя реализация этих элементов, не хотелось бы все переделывать сейчас, особенно это касается html, у меня задача посмотреть на альтернативные варианты, какие то автогенераторы, и почитать про похожие кейсы, но что то я не могу таких найти
  • Вопрос задан
  • 233 просмотра
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
Одинаковая структура при разных реализациях - это больно и малореально. Существуют css\html-only дизайн системы, которые можно брать и реализовывать на любом фреймворке, но это тот ещё геморрой без особого выхлопа.

Мне кажется вам стоит решить чего вы будете-придерживаться впредь, а что легаси, и вынести таки все компоненты одной актуальной версии(vue2 или vue3) в библиотеку, скомпилировав её в режиме web-components. Веб компоненты вы сможете подключать куда угодно, ценой лишних 100кб на непрофильный vue-runtime в случае несовпадения.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы