Сегодня рассмотрим еще один очень нужный и полезный плагин для web-разработчика. Это плагин
под Gulp, который должен иметь каждый веб-разработчик в своей копилке.
1 gulp-livereload
Суть плагина
в автоматизации обновления страниц в окне браузера. Это тоже самое, что и связка - плагин LiveReload под Sublime Text + плагин LiveReload под браузер. Но в данном случае получается связка - плагин 1
gulp-livereload
+ плагин LiveReload под браузер.1
gulp-livereload
Сказать честно, предыдущий опыт настройки LiveReload, описанный в этой статье - “Установка LiveReload в Sublime Text 2” меня полностью не удовлетворял и я им не пользовался. Причина заключалась в том, что иногда эта связка работала, а иногда - почему-то нет. Нестальность работы плагина под Sublime Text (у меня) отбивала всякое желание иметь с ним дело.
А вот связка плагин
+ плагин LiveReload под браузер работает стабильно. Кроме того, если Node.js + Gulp уже настроен для текущего проекта, то не возникает никакой проблемы в установке дополнительного плагина 1
gulp-livereload
.1
gulp-livereload
Установка плагина gulp-livereload
Плагин
проживает по указанному адресу - gulp-livereload. Установка в проект производиться командой:1
gulp-livereload
В виде зависимостей проекта запись в файле
должна выглядеть (как минимум) так:1
package.json
Добавляем переменную
в файл 1
livereload
для инициализации плагина 1
gulpfile.js
и дальнейшей работы с ним:1
gulp-livereload
Установка плагина LiveReload под браузер
Следующим шагом будет установка расширения LiveReload под браузер. В моем случае это будет Mozilla Firefox, однако расширение LiveReload существует и под два других популярных браузера - Google Chrome и Safari.
Для установки расширения под Firefox не стоит искать его на странице расширений Mozilla - LiveReload 0.6.4. Там находится устаревшая версия плагина, которая наверняка не подойдет для вашего браузера.
Лучше посетим домашнюю страницу проекта LiveReload с описанием установки расширений под каждый из браузеров - How do I install and use the browser extensions. Скачиваем по указанной на странице ссылке расширение под нужный браузер (Firefox) и автоматически устанавливаем его.
На панели инструментов браузера появиться значок плагина LiveReload в виде круга из двух стрелок. Однократное нажатие на значок запускает плагин - он принимает вид, похожий на компас со стрелкой. Еще одно нажатие выключает плагин LiveReload.
Создание задачи под gulp-livereload
В принципе, плагин
не требует для себя создания отдельной задачи. Все, что нужно для него - это запуск его как локального сервера. Если вы скажете, что не устанавливали сервер LiveReload, то могу успокоить вас - устанавливали! Инсталляция плагина 1
gulp-livereload
подразумевает автоматическую установку сервера LiveReload.1
gulp-livereload
Поэтому нам нужно всего лишь предварительно активировать, запустить его. Кстати, если у вас вдруг при попытке включения плагина LiveReload в браузере появляется окно с такой ошибкой:
… то это говорит всего лишь о том, что перед этим не был запушен в консоли сам сервер LiveReload. Для этого я создам задачу
, внутрь которой помещу вызов функции 1
watch
:1
livereload()
Все - мне больше ничего не нужно дописывать для задачи компилирования из Sass в CSS (эта задача приведена здесь в качестве примера использования плагина
):1
gulp-livereload
Полностью листинг файла
в данном случае будет выглядеть таким образом:1
gulpfile.js
Все готово для тестирования работы плагина
.1
gulp-livereload
Тестирование плагина gulp-livereload
Осталось выполнить две маленькие вещи. Первая - включаю плагин LiveReload в браузере. Вторая - запускаю Gulp для мониторинга изменений и работы плагина
:1
gulp-livereload
Видим, как последняя строка в консоли говорит нам, что сервер LiveReload запустился и прослушивает порт по умолчанию - 35729. Вношу изменения в файл стилей
:1
style.scss
… и смотрю на вывод в консоли:
Изменение было отслежено, файл перекомпилирован задачей
. А что же плагин 1
sass
- он тоже подхватил изменения?1
gulp-livereload
Смотрим:
О, да! Изменение было подхвачено плагином
- “картинка” в окне браузера изменилась без перезагрузки последнего.1
gulp-livereload
Еще раз проверим и внесем какое-нибудь изменение в файле стилей:
Отлично! Вот мы и изучили еще одну полезную сторону работы с Gulp - использование плагина
.1
gulp-livereload