@Minary

Сборка проекта под разные сайты?

В чем суть:
Есть 3 разных сайта (домены) где хостится один проект.
Нужно настроить сборку проекта, чтобы можно было собирать разные версии на определенном домене.
Различия в версиях будут не большие - отличие по цветам, и где-то отличие в используемых компонентах vue
Если с цветами еще можно придумать, то вот как собирать с разными компонентами для сайта пока не понял.
Есть у кого опыт?
  • Вопрос задан
  • 189 просмотров
Решения вопроса 3
rpsv
@rpsv
делай либо хорошо, либо никак
Можно попробовать через .env, но есть вообще необходимость так усложнять?
Как мне кажется проще завести 3 ветки каждая из которых будет соответствовать сайтам, и соответственной отдельно апке.
Таким образом у вас будет общая кодовая база (если правка для всех, то сразу же во все ветки и отгружаете) и возможность вносить правки точечно.
В любом случае со временем (если разных правок для разных сайтов будет много), у вас уже будут разные приложения, и устраивать адское месево из условий в стилях и скриптах, ради того чтобы сохранить "единое" приложение - бессмысленно.
Ответ написан
Aetae
@Aetae Куратор тега Vue.js
Тлен
Если разные версии одних и тех же компонентов(различающихся только внутри но имеющих идентичный интерфейс), то можно просто использовать алиасы, типа:
alias: { 
  '@component-1': {
    'site1': path.resolve(__dirname, './site1/component-1.vue'),
    'site2': path.resolve(__dirname, './site2/component-1.vue'),
  }[process.env.TARGET]
}
import Component1 from '@component-1';
Это если не билдить лишнего. А так, если размер не критичен, можно просто использовать конфиг-файл и <component :is="var"/>.
Ответ написан
Fragster
@Fragster
помогло? отметь решением!
различающиеся компоненты (лэйауты?) вынести в .env и подставлять нужные через component :is=
в особо запущенных случаях - вынести конфиги в jsonы и переключать их через тот же .env
тогда не надо в гите держать много веток и черрипикать изменения общего.
Но такой подход хорош только когда реально изменения минимальные.
Еще можно все общие компоненты вынести в отдельный репозиторий, но тут тоже надо по месту смотреть.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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