При разработке Laravel включение автоматической перезагрузки при сохранении может значительно повысить вашу производительность за счет автоматического обновления браузера всякий раз, когда вы сохраняете изменения в своем коде. Это устраняет необходимость обновления страниц вручную, позволяя вам наблюдать за обновлениями в режиме реального времени. В этой статье мы рассмотрим несколько способов включения автоматической перезагрузки при сохранении в Laravel, сопровождая их примерами кода.
Метод 1: использование Laravel Mix
Laravel Mix — это мощный инструмент, который упрощает компиляцию ресурсов и управление ими в приложениях Laravel. Чтобы включить автоматическую загрузку при сохранении с помощью Laravel Mix, выполните следующие действия:
Шаг 1. Установите Laravel Mix, если вы еще этого не сделали:
npm install laravel-mix --save-dev
Шаг 2. Настройте файл Laravel Mix webpack.mix.js:
const mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css')
.browserSync('your-project.test'); // Replace 'your-project.test' with your local development URL
Шаг 3. Запустите команду просмотра Laravel Mix:
npx mix watch
Теперь всякий раз, когда вы сохраняете изменения в своем коде, Laravel Mix автоматически перекомпилирует ресурсы и запускает обновление браузера.
Метод 2: использование Browsersync
Browsersync — отличный инструмент, обеспечивающий перезагрузку и синхронизацию браузера в реальном времени. Чтобы включить автоматическую загрузку при сохранении с помощью Browsersync в Laravel, выполните следующие действия:
Шаг 1. Установите Browsersync:
npm install browser-sync browser-sync-webpack-plugin --save-dev
Шаг 2. Настройте файл Laravel Mix webpack.mix.js:
const mix = require('laravel-mix');
const BrowserSyncPlugin = require('browser-sync-webpack-plugin');
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css')
.webpackConfig({
plugins: [
new BrowserSyncPlugin({
proxy: 'your-project.test', // Replace 'your-project.test' with your local development URL
files: [
'app//*.php',
'resources/views//*.php',
'public/js//*.js',
'public/css//*.css',
],
reloadDelay: 2000 // Adjust the delay to avoid premature reloads
})
]
});
Шаг 3. Запустите команду просмотра Laravel Mix:
npx mix watch
Теперь Browsersync будет отслеживать изменения в указанных файлах и запускать автоматическую перезагрузку браузера при сохранении.
Метод 3: использование пакета Laravel LiveReload
Пакет Laravel LiveReload обеспечивает плавную интеграцию с LiveReload, расширением браузера, которое автоматически обновляет страницу при внесении изменений. Чтобы использовать этот пакет, выполните следующие действия:
Шаг 1. Установите пакет Laravel LiveReload:
composer require spatie/laravel-livereload --dev
Шаг 2. Настройте пакет в файле Laravel config/app.php:
'providers' => [
...
Spatie\LaravelLiveReload\LiveReloadServiceProvider::class,
],
Шаг 3. Включите LiveReload в вашей среде разработки:
php artisan vendor:publish --provider="Spatie\LaravelLiveReload\LiveReloadServiceProvider"
Шаг 4. Запустите сервер разработки Laravel:
php artisan serve
Теперь всякий раз, когда вы сохраняете изменения в своем коде, LiveReload автоматически обновляет браузер.
Включение автоматической перезагрузки при сохранении в Laravel может значительно улучшить ваш рабочий процесс разработки. В этой статье мы рассмотрели три разных метода: использование Laravel Mix, Browsersync и пакета Laravel LiveReload. Каждый метод обеспечивает простой способ реализации функции автоматической перезагрузки, позволяя вам наблюдать за обновлениями в реальном времени во время разработки приложений Laravel.
Реализуя автоматическую загрузку при сохранении, вы можете сэкономить время, повысить производительность и повысить эффективность разработки в Laravel.