dmitrybascacov
@dmitrybascacov
Кодим и декодим, а иногда кино смотрим

Как использовать Vite вместе с sass внутри docker?

Laravel поменяла mix на vite. Документация у второго оказалась неподвластна мне, поэтому ничего не поняв, я пришел сюда просить помощи у знающих.

Каким образом я могу использовать vite? Как его использовать внутри docker? И самое главное: как использовать все это вместе с SASS?

поставлю свечку(мысленно) за тех кто даст рабочий ответ
  • Вопрос задан
  • 148 просмотров
Решения вопроса 1
gzhegow
@gzhegow
aka "ОбнимиБизнесмена"
Для того чтобы адекватно работать с webpack, стоит попробовать установить symfony/encore, и написать класс из 3-4 методов, чтобы по имени файла находил его же в папке /build/ с помощью генерируемого при сборке manifest.json.

После этого вы привычным образом пишете "npm install {пакет}" и подключаете его, сборка encore соберет из него папку /build, у которой будут файлы так называемые entrypoints, по факту файлы page-home.js, page-product.js - их вы сами так назовете. В каждом из этих файлов будут работать ваши import/require и даже динамический импорт. Дальше в файлах шаблонов в блоке вы вызовите что-то вроде $encore->styles('page-index') и $encore->scripts('page-index') - их правда придется на пхп написать, но там строчек 20 кода.

И всё, на любой странице яваскрипт любой сложности просто берет и работает, как раньше, когда вы писали <script src>

Прикольно играться с Витей в конструктор, или плеваться от Микса, который "пытался но не смог", а можно взять энкор и забыть про этот ад.

Второй вопрос - что делать с докером.

Да, нужно Dockerfile написать где подменить CMD на ваш скрипт .sh который выполняет ваши команды, которые вы на локале пишете.

К сожалению, если вы хотите запускать это всё вместе с веб-сервером, то вам придется писать свой foreground скрипт, который не позволит контейнеру после запуска "отработать и закончится", а повиснет и будет ждать.

Были б вы в телеге, я б показал как.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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