Я создаю приложение с белой надписью, которое должно выглядеть и чувствовать себя по-разному в зависимости от бизнес-клиента. Каждый клиент получает свою собственную сборку, которая размещается в другом домене.
Поэтому я хочу изменить файл .styl, который строит Quasar, для соответствия указанным c фирменным цветам. Я не хочу использовать setBrand (), потому что IE11 является требованием.
Я использую QENV , чтобы установить переменную окружения, но открыт для чего-либо.
Я бы нравится делать что-то вроде этого:
css: [
`${process.env.QENV.client}.styl`
]
, где QENV.client - строка, идентифицирующая определенного клиента.
Это не работает, потому что process.env.QENV недоступен в в этот раз. В идеальном мире он должен создавать только необходимые файлы, а не различать guish во время выполнения.
То, что я рассмотрел:
- NormalModuleReplacementPlugin Я думал, что смогу просто заменить сам файл во время сборки. Я не мог заставить его делать то, что я хочу, и это, вероятно, сломало бы горячую перезагрузку, которая была бы (терпимым) обломом
- vue -эмоции : Кажется, на самом деле это не Намного пути с Quasar и хорошего блока, который может сделать Emotion, не требуется
- vue -styled-components : Отличная библиотека, но не слишком хорошо сочетается с Quasar, потому что вы в значительной степени воссоздать, например, кнопки. Я не получил его, чтобы взять существующие квазарские.
- Игнорирование цветов квазара и предоставление моих собственных тематических цветов через JS: чувствует себя грязным. Это также не помогает, если я хочу включить пользовательские шрифты.
- , требующий другого css во время выполнения: я хочу избежать ненужных вещей в скомпилированном комплекте
Как можно ли заставить Quasar связывать и использовать нужные CSS файлы?