Как установить gulp sass

Gulp Sass. Установка, настройка, его возможности и применение в своих проектах.

Что такое Sass

Зачем нужен Sass

Чтобы понять, зачем нужен Sass, перечислим его некоторые возможности:

Если коротко зачем нужен Sass: он ускоряет и упрощает процесс разработки.

Как использовать Sass

Существуют разные способы начать использовать Sass:

Рассмотрим использование Sass для таск-менеджера Gulp. Перед тем как начать установку, желательно ознакомиться с основами Gulp.

Установка, подключение и настройка gulp-sass

Для установки плагина gulp-sass в наш проект, откроем командную строку в папке проекта. Введём следующую команду:

В скобках sass(<>) можно задавать дополнительные настройки.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Gulp Sourcemaps

Установка плагина gulp-sourcemaps.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Gulp notify

На данный момент, обработку ошибок в sass-файле мы ловим в следующей строке.

Это позволит получать следующие уведомления на рабочем столе.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как видите это очень удобно. Сразу видно в каком файле и на какой строке была совершена ошибка.

Теперь вы будете получать уведомления об ошибках на рабочем столе.

Возможности Sass

Их огромное количество, рассмотрим лишь самые популярные. С полным списком можно ознакомиться на официальном сайте.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Ссылка на родительский селектор &.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Арифметические операции с числами.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Арифметические операции с цветами.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Использование функций в sass официальный сайт.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Статьи про Gulp

EnglishRussian
Awesome StylesheetsУдивительные стили
GulpГлоток
DependenciesЗависимости
TaskЗадача
ReturnВозврат
DestinationПункт назначения
ImportИмпортировать
IncludeВключать

Надеюсь, вам понравилась данная информация. Если вам интересна тема web-разработки, то можете следить за выходом новых статей в Telegram.

Источник

Gulp — установка и настройка

Автор: Гончаров · Опубликовано 13.11.2017 · Обновлено 28.10.2019

Gulp — установка и настройка.

Где-нибудь создать папку, к примеру к корне диска С, называем gulp, и в ней папка myproject. Главное, чтобы в пути к ней не было русских букв.

Внутри этой папки — зажимаем клавишу SHIFT и кликаем правой кнопкой мыши (пкм) по пустому месту, тогда в контекстном меню будет пункт «открыть командное окно». Выбираем его, оно появляется и в нем сразу будет путь к нашей папке.

В окне команд пишем:

npm init — инициализация нашего проекта, типо создание, по типу объявления переменной в js.

там нужно будет ответить на несколько вопросов:

после этого в папке появляется файл package.json — в нем сохранилась вся инфа, которую мы писали только что в командной строке.

это установка зависимостей пакетов, которые работают вместе с gulp. В нашей папке появилась папка _node_modules.

Устанавливаем проверку обновлений пакетов в gulp

Нужно установить проверку обновлений всех пакетов, которые мы наустанавливаем в галп:

потом, когда в очередной раз будем пользоваться галпом, то при запуске может появиться ошибка. Как вариант — это устарел какой-то из пакетов.

Поэтому надо написать:

В нашей папке myproject надо создать такую структуру папок:

В корне создаем папки app и dist

Внутри app:

cd app — пишем прямо в нашей командной строке, это мы переходим в папку app, а потом

— так сразу создаются все папки, чтобы не ипаться сто раз не кликать правой кнопкой в окошке виндоус — создать папку, и писать ей имя.

Не забыть создать файл index.html.

Папка app — это папка, в которой все исходники — css, изображения, скрипты и т.д. А папка dist — это уже ГОТОВЫЙ проект, откомпилированный, готовый к выгрузке, туда будут складываться уже отбработанные файлы.

Создаем файл gulpfile.js в корневой папке.

Проверяем работу gulp. Открываем этот файл и пишем в него:

ОБЯЗАТЕЛЬНО ТОЧКУ С ЗАПЯТОЙ В КОНЦЕ!! Иначе не заработает.

После этого в командной строке можно написать gulp mytask и должно показаться «Привет, я таск!»

Шаблон для создания любой задачи (task) в gulp:

Т.е. откуда брать файл, что с ним сделать и куда отгрузить.

РЕАЛЬНО ЖЕ в него пишем следующее, все с самого начала:

Заходим в папку app>sass и создаем там файл main.sass.

Пишем в него хотя бы что-нибудь, чтобы проверить работу:

Возвращаемся в файл gulpfile.js и пишем в него (добавляем строки):

В итоге создастся файл main.css в папке app>css, скомпилированный и оптимизированный уже.

Маски для создания путей для источника файлов, на примерах

app/sass/*.sass — все файлы в конкретной папке с расширением sass

app/sass/**/*.sass — все файлы с расширением sass, которые находятся в app/sass/ независимо от уровня вложенности, во всех подпапках…. все все все короче.

!app/sass/main.sass — восклицательный знак в начале, это исключение файла.

app/sass/*.+(scss|sass) — все файлы с расширением scss и sass

Дополнительно

В папке sass можно создать файл с именем, начинающимся с нижнего подчеркивания, например _part.sass. Такие файлы не участвуют в комплияции как отдельные файлы. Их надо просто импортировать командой @import в основной файл. Т.е.:

В файл main.sass в самое начало добавляем импорт и получаем:

В итоге этот фрагмент будет в начале того файла, куда импортируешь. То есть если в main.sass написать, то этот фрагмент будет в итоговом скомпилированном main.css.

Автоматическая компиляция файлов sass при сохранении

Используется метод watch. Синтаксис такой:

LiveReload

LIveReload — это автоматическое обновление стилей css на html странице при их сохранении.

Нужно установить браузер-синк (их сайт https://www.browsersync.io/ )

Останавливаем режим слежения (если запущен) Cntrl+С ДВА РАЗА и устанавливаем эту штуку:

Установить установили, а теперь нужно подключить его в gulpfile.js.

добавляем эту строку

то есть теперь начало в файле получается таким:

теперь надо написать таск (выполнение задачи) для браузер-синка:

Чтобы автоматически отражались не только css, но и html и js, нужно добавить пару строк в таск watch:

Создаем папку libs в папке app. Туда мы будем сваливать все какие-то библиотеки, jquery плагины и другие плагины.

Bower

Для установки новых библиотек лучше использовать Bower (используется для установки новых плагинов)

На их сайте говорится, что для работы нужен git, скачиваем и устанавливаем его для своей платформы.

сохраняем. Так, он говорит менеджеру пакетов куда устанавливать новые плагины.

Теперь для примера установим два плагина, в командной строке пишем:

появятся две папки jquery и magnific-popup в папке app>libs.

Установить два пакета для сбора всех файлов js и минизации:

После установки любой приблуды, надо не забывать подключать ее в файле gulpfile.js, поэтому добавляем там строки:

Создаем таск для этой утилиты:

Подключаем jquery в html.

В конце тега body добавляем строки:

т.е. общую сжатую библиотеку и ручной (common.js), он обычно не сжимается, т.к. весит немного.

В папке app>sass создаем файл libs.sass, куда будем сваливать все css библиотеки.

Устанавливаем утилиты, которые будут сжимать css и добавлять в название суффикс mini:

И опять после установки их нужно подключить в основном файле gulpfile.js. последние 2 строчки это они:

пишем таск для них:

Сюда можно, но не обязательно перенести [‘sass’] из таска watch. Получится вот так:

Подключаем css стили в html документ:

Сваливаем готовое в папку dist

Для этого создаем таск

Для того, чтобы перестраховаться, лучше бы для начала очистить папку dist от прежних файлов, если там что-то было.

Для этого устанавливаем утилиту для удаления файлов, пишем в командной строке:

После успешной установки, ее надо подключить в файл gulpfile.js, как обычно:

Оптимизация изображений в gulp

Устанавливаем пакет для оптимизации изображений

Подключаем его в gulpfile.js

Пишем таск для них.

И вставляем вызов этого таск в таск build, т.е. добавляем

теперь при запуске таска build будут все эти таски выполняться последовательно, которые в него запихали.

Если изображений много, то надо установить кеш

потом подключаем его в начале файла gulpfile.js:

И немного модифицируем после этого таск img:

Если мы поменяем папку для изображений или файлы, которые хотим оптимизировать, то у нас не будет работать минификация изображений из-за кеша.

Поэтому надо написать новый таск для очистки кеша:

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

Автоматическое создание вендорных префиксов в gulp

Для этого сначала устанавливаем пакет:

Как всегда теперь подключаем его в начале файла.

И добавляем новый пайп в таск sass:

Резюме

Итоговое содержание файла gulpfile.js

Итоговое содержание файла package.json

Структура папок

п.с. статья построена на базе видосика канала webdesigner master:

Спасибо за видосик, Алексей, всё толково и понятно.

Источник

Всем привет, друзья! Сегодня мы подробно рассмотрим, что такое Gulp и как с его помощью можно автоматизировать работу Front-end разработчика. В результате урока мы соберем серьезное и внушительное рабочее Front-end окружение для веб-разработки с использованием Gulp.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Основные ресурсы урока:

С примером урока вы можете ознакомиться на GitHub: agragregra/gulp-lesson

Установка Gulp

Внимание! Если вы пользователь последней версии Windows, рекомендую использовать WSL для веб-разработки. Скачивать инсталлятор с сайта Nodejs.org в этом случае не нужно. Воспользуйтесь этим руководством: Использование подсистемы Linux для веб-разработки в Windows.

Если у вас возникли проблемы при прохождении урока с использованием Gulp 4, рекомендую откатиться на 3 версию, пройти полностью урок и только после этого обновить package.json до 4 версии. Для лучшего понимания. Откатить версию можно в файле package.json. Вместо «gulp»: «^4.x.x», напишите версию «^3.9.1», удалите папку «node_modules» и установите пакеты заново «npm i«.

После того, как Node установлен, можно приступать к установке Gulp. Откройте терминал (правая кнопка мыши в папке с зажатым Shift > Откройте здесь оболочку Linux) и выполните следующую команду:

Создание проекта Gulp

Давайте создадим папку проекта для примера, с которой будем работать, пусть это будет, например, папка myproject.

Очень важно! Не создавайте русскоязычные папки проектов и следите за тем, чтобы путь до папки проекта не содержал кириллических символов, то-есть не был написан на русском языке. В противном случае, у вас могут возникнуть проблемы при работе различных утилит Gulp. Папка вашего пользователя также не должна быть русскоязычной. Все только латинскими буквами.

Теперь откроем терминал в папке проекта. Для пользователей Windows достаточно зажать Shift и открыть контекстное меню. В нем появится пункт «Откройте здесь оболочку Linux». Оболочка Linux должна быть предварительно установлена, см урок: Использование подсистемы Linux для веб-разработки в Windows.

Далее выполним инициализацию проекта в той папке, которую создали:

Следуя инструкциям, заполним метаинформацию о нашем проекте:

Назовем проект «MyProject»

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Имя автора можно и указать 🙂

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

license оставляем по умолчанию и вводим yes:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

В результате такой несложной первоначальной настройки нашего нового Gulp проекта в папке myproject нарисуется новый файл package.json.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Файл package.json является файлом манифеста нашего проекта, который описывает помимо той информации, что мы внесли в терминале, еще и информацию об используемых пакетах в нашем проекте.

Например, если мы установим в проект Gulp с ключом —save-dev, то пакет и используемая версия автоматически добавится в наш package.json. Такой учет позволит быстро разворачивать новый проект с использованием уже имеющегося package.json и устанавливать необходимые модули с зависимостями, которые прописаны в package.json в новых проектах.

Давайте установим в наш проект Gulp:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Кроме того, у нас появляется папка node_modules, которая теперь содержит установленный пакет gulp и необходимые зависимости. В данную папку автоматически будут сваливаться все модули и зависимости, которые мы будем устанавливать в проект. Папок с зависимостями может быть очень много, не смотря на то, что мы установили не так уж и много пакетов. Это связано с тем, что в дополнение к основным пакетам устанавливаются программы, необходимые для корректной работы основного пакета. Ни чего чистить и удалять из папки node_modules не нужно. Кроме того, у вас может появиться дополнительный файл package-lock.json. В этом нет ничего страшного, это служебный файл, на который можно просто не обращать внимания.

Структура каталогов в проектах

Работая с различными плагинами, программами и скриптами, будь то jQuery плагин, модуль для CMS, веб-проект или какое-то другое ПО, вы наверняка замечали, что у всех проектов есть схожая структура каталогов, например, большинство проектов имеет папку dist и app. Давайте создадим первоначальную структуру нашего учебного проекта. В результате мы должны создать следующую структуру в нашем проекте myproject (все файлы, которых не было, пока создаем пустыми):

    myproject/

      app/

        css/fonts/img/js/sass/index.html

      dist/node_modules/gulpfile.jspackage.json

Данная структура встречается довольно часто, практически во всех проектах, но это не аксиома и некоторые проекты могут иметь вообще другую структуру. Для данной статьи мы будем использовать именно такую структуру проекта.

Папка dist/ будет содержать уже готовый продукт, оптимизированный, сжатый, причесанный. Это папка продакшена.

gulpfile.js

Теперь давайте откроем в редакторе кода gulpfile.js и напишем в него:

Данной строчкой мы подключаем Gulp к нашему проекту, посредством функции require. Данная функция подключает пакеты из папки node_modules в наш проект, присваивая их переменной. В данном случае, мы создаем переменную gulp.

Далее мы уже можем работать с этой переменной и создавать таски (инструкции).

gulpfile.js:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Результат выполнения команды gulp mytask:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Если вы используете Gulp 4 и у вас появляется ошибка о невозможности завершения таска, можно добавить async перед function() и выполнять код асинхронно:

Это, конечно очень простой базовый пример создания таска. Как правило, таски несколько сложнее и включают некоторые дополнительные команды:

Это база Gulp, теперь можно создавать инструкции. Для начала давайте создадим обработчик, который будет компилировать Sass файлы в CSS (CSS препроцессинг).

Gulp Sass

Давайте установим пакет gulp-sass в наш проект с сохранением версии и названия в package.json.

Обратите внимание, что любые Gulp пакеты, для любых задач, легко гуглятся и имеют вполне исчерпывающие инструкции по подключению на своих хоумпейджах и в документации.

Далее подключим gulp-sass в файле gulpfile.js. Обратите внимание, что переменные для подключения пакетов можно перечислять через запятую:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

gulpfile.js:

После этого, логичным будет выполнить в терминале наш новый таск sass:

В результате выполения данной команды в папке app/css появится файл main.css.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

От таки чудеса, друзя. Как видим, все просто 🙂

Выборка файлов для gulp.src

В принципе, мы рассмотрели все, что необходимо знать о Gulp, теперь будем углубляться в каждую деталь того, что было изложено выше.

Давайте познакомимся ближе со всеми возможностями выборки файлов для обработки.

Самые распространенные шаблоны выборки

Давайте внесем некоторые изменения в таск sass и сделаем его более универсальным:

Дело в том, что брать напрямую один отдельный файл не всегда удобно, так как в папке sass могут появиться и другие файлы с расширением sass, которые могут использоваться в проекте.

Обратите внимание, что файлы sass, которые предназначены для импорта в другие файлы, как части одного общего, начинаются с нижнего подчеркивания _part-1.sass. Такие файлы не учавствуют в компиляции, как отдельные файлы, а добавляются через @import в основные файлы.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Наблюдение за изменениями в файлах (Gulp Watch)

Gulp поддерживает метод watch для проверки сохраняемых файлов и имеет следующий синтаксис:

Если мы, например, хотим наблюдать за всеми изменениями в файлах sass нашего проекта, то можем использовать следующую конструкцию:

Что мы видим: Gulp наблюдает за всеми sass файлами и при сохранении выполняет таск sass, который автоматически компилирует их в css файлы.

Также, мы можем создать отдельный таск для наблюдения за всеми необходимыми файлами

Для Gulp 4 код будет выглядеть так:

Если мы запустим в консоли gulp watch, то Gulp будет автоматически следить за всеми измененями в файлах sass при сохранении и компилировать их в css.

Было бы неплохо в дополнение к этой красоте сделать автоматическую перезагрузку страницы при изменениях в файлах. Для этой задачи нам подойдет Browsersync.

Автоматическое обновление страниц с использованием Bbrowser Sync

Мы уже умеем устанавливать дополнения для Gulp, поэтому давайте установим Browser Sync в наш проект:

И, конечно-же, подключим в файле gulpfile.js, как мы это делали ранее с пакетом gulp-sass.

Создаем таск для Browser Sync:

Отлично! Наш сервер для работы и автоматического релоада готов. Теперь давайте последим за изменениями в Sass. Если файл Sass обновляется, автоматически инжектим в HTML измененный CSS файл:

Обратите внимание, что мы выполняем таски [‘sass’, ‘browser-sync’] до запуска watch, так как их выполнение необходимо нам для корректного отображения изменений на момент запуска сервера.

Для Gulp 4 логичнее было бы написать так и выполнять всю конструкцию в дефолтном таске:

Расположим таск watch после всех других тасков и в результате получим такой gulpfile.js для Gulp 3:

Такой код получится для Gulp 4:

Для того, чтобы следить за изменениями в браузере, сделаем соответствующую разметку в файле index.html директории app с подключением файла стилей main.css:

Выполним в терминале команду «gulp». Результат завораживает:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Давайте разберемся, что у нас происходит в консоли (картина может разниться, в зависимости от версии ПО):

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

И эта задача нам по плечу. Создайте в папке app/js файл common.js. Это основной пользовательский JS файл в нашем проекте. Модифицируем код:

Код для Gulp 4 (здесь лучше добавить дополнительный таск для обработки HTML и JS):

Здесь мы используем функцию browserSync.reload, которую нам любезно предоставил пакет Browser Sync. Обратите внимание на выборку файлов для слежения.

В принципе, мы уже имеем довольно продвинутое рабочее окружение. Но двигаемся дальше, это не все, на что способен Gulp.

Оптимизация JavaScript

Давайте рассмотрим, как можно оптимизировать JS файлы проекта. Чаще всего, в оптимизации нуждаются библиотеки и сторонние jQuery и JavaScript плагины. Давайте создадим в папке app паку libs, которая будет содержать необходимые проекту библиотеки. Все библиотеки будем размещать в отдельных папках.
Для установки новых библиотек рекомендую использовать Bower.

Обратите внимание, что для работы Bower необходим установленный https://git-scm.com/downloads. Если в ОС Windows вы используте оболочку Ubuntu bash, то установку Git выполнять не нужно.

Теперь в папке проекта создадим файл .bowerrc, в который напишем:

Если вы пользователь ОС Windows, у вас не получится просто взять и создать файл, начинающийся с точки. В этом случае можно просто поставить точку в конце файла и нажать Enter: .bowerrc.

Данной настройкой мы указываем путь по умолчанию для установки плагинов с помощью Bower.

Установим jQuery и Magnific Popup, для примера:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Обратите внимание, что все (ну, или почти все) плагины имеют папку dist, об этом мы говорили ранее. В этой папке располагаются готовые файлы продакшена, которые мы и будем использовать в нашем проекте.

Давайте создадим таск scripts, который будет собирать все JS файлы библиотек в один и минифицировать файл. Для этого установим 2 пакета: gulp-concat и gulp-uglifyjs.

Подключим новые библиотеки в gulpfile.js:

Создаем задачу для сборки и сжатия всех библиотек (перед watch):

Давайте проверим, как работает наш новый таск scripts, выполнив в терминале:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Выполнение таска scripts можно запустить перед выполнением watch. Gulp 3:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

На выходе, в папке app/css мы получаем дополнительно к main.css файл libs.css, который содержит стили всех библиотек. Файл main.css нет особого смысла минифицировать, так как он содержит кастомные (пользовательские) стили. А вот файл libs.css мы с удовольствием минифицируем.

Внимание! Если в файле libs.css не появляется кода библиотек, а вы по-прежнему видите в нем конструкции @import, создайте отдельный файл _libs.sass для библиотек, который начинался бы с нижнего подчеркивания. Затем импортируйте этот файл в главный, тем самым объеденив и библиотеки и пользовательские стили в один файл.

Для минификации CSS установим пакеты gulp-cssnano и gulp-rename:

И подключим их в нашем gulpfile.js:

И создадим соответствующий таск css-libs. Сразу добавим данный таск в watch для того, чтобы библиотеки собирались в процессе запуска проекта. Таск sass лучше вызвать до запуска css-libs, чтобы нам было что минифицировать:

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Подготовка к продакшену

Результирующий код для Gulp 4 будет представлен в конце статьи.

Для продакшена (сборки в папку dist) мы создадим отдельный таск build в конце gulpfile.js. В данной инструкции мы осуществим сборку Sass, JS и выгрузку того, что у нас готово в папку dist.

Здесь, присваивая переменным какие-либо действия, мы их выполняем. Таким образом можно выполнять мультизадачные таски. Можно и не присваивать, но мы сделаем так, ибо красивше.

Все прекрасно, но всегда есть одно «Но». Перед тем, как собирать проект нам желательно бы очистить папку dist, чтобы не оставалось лишних потрохов от предыдущих итераций с нашим проектом.

Установим и подключим пакет del:

Создаем таск очистки clean и добавляем его выполнение перед выполнение build:

Для Gulp 4 попробуйте составить таски самостоятельно, как мы это делали в предыдущих прмерах.

Оптимизация изображений

Как вы могли заметить, в нашем проекте на продакшене не хватает изображений. Давайте исправим это недоразумение и добавим обработку изображений в наш проект. Данный раздел выполнен с использованием Gulp 3. Код для Gulp 4 можно адаптировать самостоятельно, как мы это делали ранее.

В папке app/img есть 3 изображения, которые нам необходимо перенести в папку продакшена, оптимизируя.

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Для оптимизации изображений установим 2 пакета (gulp-imagemin, imagemin-pngquant) и подключим их:

Далее создадим таск img для сжатия изображений на продакшен и вызовем его после очистки:

Все прекрасно. До тех пор, пока количество изображений в проекте не превышает 3 шт. Большое количество картинок будет обрабатываться значительно дольше, поэтому к обработке изображений было бы неплохо добавить кеш, чтобы картинки кешировались, экономя наше время.

Установи м подключим gulp-cache:

Модифицируем таск img:

Автоматическое создание префиксов CSS с помощью Gulp

Вендорные префиксы необходимы для обеспечения максимальной совместимости со всеми современными браузерами. Было бы логично сделать автоматическое добавление префиксов, чтобы написав в CSS или Sass:

Мы получили на выходе:

Установим пакет gulp-autoprefixer и подключим его в gulpfile.js:

И модифицируем наш таск sass:

Дефолтный таск Gulp

Внимание! Дефолтный таск для Gulp 4 отличается от приведенного в этой главе. Полный код для Gulp 4 можно будет посмотреть в конце статьи.

Также, необходимо создать автономный таск для очистки кеша Gulp, чтобы его можно было вызывать простой командой gulp clear:

Если у вас возникнут проблемы с изображениями или другими кешируемыми файлами, просто почистите кеш.

В результате, у нас должен получиться такой gulpfile.js. Gulp 3:

Результирующий код для Gulp 4:

С примером урока вы можете ознакомиться на GitHub: agragregra/gulp-lesson

Чтобы установить все пакеты и зависимости для скачанного примера, выполните команду npm i в папке проекта.

Премиум уроки от WebDesign Master

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Создание сайта от А до Я. Комплексный курс

Как установить gulp sass. Смотреть фото Как установить gulp sass. Смотреть картинку Как установить gulp sass. Картинка про Как установить gulp sass. Фото Как установить gulp sass

Создание современного интернет-магазина от А до Я

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *