symfony webpack encore Установка и работа через npm (без yarn)

По сути encore является дополнением (оберткой) к Webpack, поэтому многие его команды тоже являются надстройками/упаковками над близкими по смыслу возможностями webpack-а.

Установка

Сначала ставим обычным образом энкор:

composer require encore

Потом подтягиваем зависимости с помощью npm:

npm install

Сборка

Есть 4-ре предустановленных скрипта с такими вот определениями (см. package.json), сначала идет имя "скрипта" (по сути - команды), а потом то, что она из себя представляет, как видим, в отличие от прямого использования вебпак здесь команду встречает энкор, который уже где-то в своих недрах вызовет вебпак:

  • dev-server: "encore dev-server"

    -- сборка с возможность использовать отладочный сервер, который сам будет перезагружать страницу.

    ПРИМЕЧАНИЕ: этот режим может потребовать явного указания таймаутов в конфиге.

  • dev: "encore dev"

    -- сборка при разработке.

  • watch: "encore dev --watch"

    -- сборка для разработки с автоматической пересборкой при изменении файлов (используйте именно её при разработке на локальной машине)

    ПРИМЕЧАНИЕ: этот режим может потребовать явного указания таймаутов в конфиге.

  • build: "encore production --progress"

    -- сборка для продакшена (запускаем, например, при деплое).

Например, чтобы запустить просто автоматическую сборку при изменении файлов на локальной машине надо выполнить в консоли (в корне проекта):

npm run-script watch

Источники

Key Words for FKN + antitotal forum (CS VSU):