Горячая перезагрузка модулей в Laravel с использованием Laravel Sail и Mix
Горячая перезагрузка модуля – это мощная функция, которая позволяет разработчикам видеть изменения, вносимые в их код, немедленно отраженные в браузере, без необходимости обновлять страницу вручную. В этой статье мы рассмотрим, как настроить горячую перезагрузку модулей в Laravel с помощью Laravel Sail и Laravel Mix.
Шаг 1. Установите Laravel Sail
Laravel Sail — это легкий интерфейс командной строки для взаимодействия со средой разработки Docker по умолчанию в Laravel. Для начала убедитесь, что на вашем компьютере установлен Docker. Затем откройте терминал и перейдите в каталог проекта Laravel. Чтобы установить Laravel Sail, выполните следующую команду:
composer require laravel/sail --dev
Шаг 2. Настройте Laravel Sail
После установки Laravel Sail вам необходимо настроить его для своего проекта. Выполните следующую команду, чтобы создать файл конфигурации Sail:
php artisan sail:install
Эта команда создаст файл docker-compose.ymlв корне вашего проекта Laravel. Откройте файл и убедитесь, что раздел servicesсодержит следующую конфигурацию службы вашего приложения:
services:
laravel.test:
build:
context: .
dockerfile: Dockerfile
image: sail-7.4/app
ports:
- '80:80'
environment:
WWWROOT: /var/www/html/public
Шаг 3. Установите Laravel Mix
Далее нам нужно установить Laravel Mix, который представляет собой гибкую оболочку Webpack для компиляции и объединения ресурсов. Чтобы установить Laravel Mix, выполните следующую команду:
npm install laravel-mix --save-dev
Шаг 4. Настройте Laravel Mix для горячей перезагрузки модулей
Чтобы включить горячую перезагрузку модулей в Laravel Mix, откройте файл webpack.mix.jsв корне вашего проекта Laravel. Добавьте следующий код, чтобы включить опцию hmr(горячая замена модуля):
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css')
.options({
hmrOptions: {
host: 'localhost',
port: 8080
}
})
.webpackConfig(require('./webpack.config'));
Обязательно замените resources/js/app.jsи resources/sass/app.scssпутями к файлам JavaScript и Sass соответственно.
Шаг 5. Запустите сервер разработки
Теперь, когда все настроено, вы можете запустить сервер разработки с помощью Laravel Sail. Запустите следующую команду в своем терминале:
./vendor/bin/sail up
Эта команда запустит контейнеры Docker, определенные в файле docker-compose.yml, включая сервер разработки.
Шаг 6. Доступ к приложению
Чтобы получить доступ к приложению с включенной горячей перезагрузкой модуля, откройте браузер и перейдите к http://localhost:8080. Вы должны увидеть свое приложение Laravel, и любые изменения, которые вы вносите в свой код, будут автоматически отражаться в браузере без необходимости обновлять страницу.
Поздравляем! Вы успешно настроили горячую перезагрузку модулей в Laravel, используя Laravel Sail и Laravel Mix. Наслаждайтесь улучшенным опытом разработки!
Надеюсь, эта статья поможет вам понять, как настроить горячую перезагрузку модулей в Laravel с помощью Laravel Sail и Laravel Mix. Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!