Gulp - Краткое руководство
Что такое Gulp?
Gulp - это средство выполнения задач, использующее Node.js в качестве платформы. Gulp использует исключительно код JavaScript и помогает запускать интерфейсные задачи и крупномасштабные веб-приложения. Он создает системные автоматизированные задачи, такие как минификация CSS и HTML, объединение файлов библиотеки и компиляция файлов SASS. Эти задачи можно запускать с помощью сценариев Shell или Bash в командной строке.
Зачем использовать Gulp?
- Он короче, проще и быстрее по сравнению с другими средствами запуска задач.
- Использует SASS и LESS в качестве препроцессора CSS.
- Автоматически обновляет страницу после редактирования исходных файлов.
- Легко понять и построить Gulpfile.js, потому что он использует чистый код JavaScript для создания задачи.
История
На всю документацию Gulp распространяется лицензия CC0. Первоначально Gulp v1.0.0 был выпущен 15 января 2015 г., а текущая версия Gulpv3.9.0.
Особенности
- Обеспечивает минификацию и объединение.
- Использует чистый код JavaScript.
- Преобразует LESS или SASS в компиляцию CSS.
- Управляет манипуляциями с файлами в памяти и повышает скорость с помощью платформы Node.js.
Преимущества
- Огромное преимущество в скорости по сравнению с любым другим исполнителем задач
- Легко кодировать и понимать.
- Легко тестировать веб-приложения.
- Плагины просты в использовании и предназначены для выполнения одной задачи за раз.
- Многократно выполняет повторяющиеся задачи, такие как минимизация таблиц стилей, сжатие изображений и т. Д.
Недостатки
- Больше зависимостей и новичок по сравнению с Grunt.
- Используя плагины Gulp, вы не можете выполнять несколько задач.
- Конфигурация не такая чистая, как у Grunt.
В этой статье представлена пошаговая процедура установки Gulp.
Системные требования для Gulp
Operating System - Кроссплатформенность
Browser Support - IE (Internet Explorer 8+), Firefox, Google Chrome, Safari, Opera
Установка Gulp
Step 1- Нам нужен Node.js для запуска примеров Gulp. Чтобы загрузить Node.js, откройтеhttps://nodejs.org/en/, вы увидите экран, как показано ниже -
Загрузите последнюю версию функции zip-файла.
Step 2- Затем запустите установку, чтобы установить NodeJs на свой компьютер.
Step 3 - Вам необходимо установить переменные среды.
Пользовательская переменная пути
- Щелкните правой кнопкой мыши "Мой компьютер".
- Выберите Свойства.
- Выберите вкладку «Дополнительно» и нажмите «Переменные среды».
В окне переменных среды дважды щелкните ПУТЬ, как показано на следующем экране.
Вы получите окно редактирования пользовательской переменной, как показано на следующем снимке экрана. Добавьте путь к папке Node.js в поле «Значение переменной» как C: \ Program Files \ nodejs \ node_modules \ npm. Если путь уже задан для других файлов, вам нужно поставить точку с запятой (;) после этого и добавить путь к Node.js, как показано на следующем снимке экрана.
В конце нажмите кнопку «ОК».
System Variable
В разделе «Системные переменные» дважды щелкните «Путь», как показано на следующем экране.
Вы получите окно редактирования системной переменной, как показано на следующем снимке экрана. Добавьте путь к папке Node.js в поле «Значение переменной» как C: \ Program Files \ nodejs \ и нажмите «ОК», как показано на следующем снимке экрана.
Step 4- Откройте командную строку в вашей системе и введите следующую команду. Он отобразит установленную версию Node.js.
node -v
Step 5- В командной строке введите следующую команду, чтобы отобразить версию npm (диспетчера пакетов Node.js), которая используется для установки модулей. Он отобразит установленную версию Node.js.
npm -v
Step 6- В командной строке введите следующую команду для установки Gulp. Добавление флага «-g» гарантирует, что Gulp глобально доступен для любого проекта.
npm install gulp -g
Step 7 - Чтобы убедиться, что Gulp установлен успешно, введите следующую команду, чтобы отобразить версию Gulp.
gulp -v
В этой главе вы познакомитесь с некоторыми основами, связанными с Gulp.
Что такое система сборки?
Система сборки называется набором задач (вместе называемых task runners), которые автоматизируют повторяющуюся работу.
Ниже приводится список некоторых задач, которые можно решить с помощью системы сборки.
- Компиляция препроцессорных CSS и JavaScript.
- Минификация файлов для уменьшения их размера.
- Объединение файлов в один.
- Запуск сервера для автоматической перезагрузки.
- Создание сборок развертывания для хранения итоговых файлов в одном месте.
В современном интерфейсном рабочем процессе система сборки работает с 3 компонентами:
- Менеджеры пакетов
- Preprocessors
- Средства выполнения задач и инструменты сборки
Менеджеры пакетов
Он используется для автоматизации обновления установки, удаления необходимых зависимостей, чистых библиотек и пакетов, используемых в среде разработки. Примером для менеджеров пакетов являютсяbower и npm.
Препроцессоры
Препроцессоры очень полезны для эффективного современного рабочего процесса, добавляя оптимизированный синтаксис и дополнительные функции, которые компилируются на его родном языке.
Некоторые из популярных препроцессоров -
CSS - SASS, LESS и Stylus.
JS - CoffeeScript, LiveScript, TypeScript и др.
HTML - Markdown, HAML, Slim, Jade и др.
Исполнители задач
Исполнители задач автоматизируют такие задачи, как преобразование SASS в CSS, минимизируют файлы, оптимизируют изображения и многие другие задачи, используемые в рабочем процессе разработки. Gulp - один из исполнителей задач в современной интерфейсной рабочей среде, работающий на Node.
Настройка вашего проекта
Чтобы установить проект на свой компьютер, создайте, например, папку с именем «работа». Рабочая папка содержит следующие подпапки и файлы -
Src - Расположение предварительно обработанных исходных файлов и папок HTML.
Images - Содержит изображения без сжатия.
Scripts - Содержит несколько предварительно обработанных файлов сценариев.
Styles - Содержит несколько предварительно обработанных файлов CSS.
Build - Эта папка будет создана автоматически и будет содержать производственные файлы.
Images - Содержит сжатые изображения.
Scripts - Единый файл сценария, содержащий минимизированные коды.
Styles - Единый файл CSS, содержащий минимизированные коды.
gulpfile.js - Это файл конфигурации, который используется для определения наших задач.
В предыдущих главах вы изучали об установке Глоток и глотке основе , которая включает в себя систему сборки Глоток, менеджер пакетов, задачи бегун, структуру Глотка, и т.д.
В этой главе мы увидим основы разработки приложения, которые включают следующее:
- Объявление необходимых зависимостей
- Создание задачи для зависимостей
- Выполнение задачи
- Наблюдая за задачей
Объявление зависимостей
Когда вы устанавливаете плагины для приложения, вам необходимо указать зависимости для плагинов. Зависимости обрабатываются менеджером пакетов, таким как bower и npm.
Возьмем один плагин под названием gulp-imageminчтобы определить зависимости для него в файле конфигурации. Этот плагин можно использовать для сжатия файла изображения и его можно установить с помощью следующей командной строки -
npm install gulp-imagemin --save-dev
Вы можете добавить зависимости в свой файл конфигурации, как показано в следующем коде.
var imagemin = require('gulp-imagemin');
Вышеупомянутая строка включает плагин, и он включен как объект с именем imagemin.
Создание задачи для зависимостей
Задача позволяет использовать модульный подход к настройке Gulp. Нам нужно создать задачу для каждой зависимости, которую мы будем добавлять по мере нахождения и установки других плагинов. Задача Gulp будет иметь следующую структуру -
gulp.task('task-name', function() {
//do stuff here
});
Где «имя-задачи» - это строковое имя, а «функция ()» выполняет вашу задачу. 'Gulp.task' регистрирует функцию как задачу в имени и указывает зависимости от других задач.
Вы можете создать задачу для указанной выше зависимости, как показано в следующем коде.
gulp.task('imagemin', function() {
var img_src = 'src/images/**/*', img_dest = 'build/images';
gulp.src(img_src)
.pipe(changed(img_dest))
.pipe(imagemin())
.pipe(gulp.dest(img_dest));
});
Изображения расположены в src/images/**/*который сохраняется в img_srcobject. Он передается другой функции, созданной конструктором imagemin. Он сжимает изображения из папки src и копирует их в папку сборки, вызываяdest с аргументом, представляющим целевой каталог.
Выполнение задачи
Файл Gulp настроен и готов к выполнению. Используйте следующую команду в каталоге вашего проекта для запуска задачи -
gulp imagemin
При запуске задачи с помощью указанной выше команды вы увидите следующий результат в командной строке:
C:\work>gulp imagemin
[16:59:09] Using gulpfile C:\work\gulpfile.js
[16:59:09] Starting 'imagemin'...
[16:59:09] Finished 'imagemin' after 19 ms
[16:59:09] gulp-imagemin: Minified 2 images (saved 80.81 kB - 16.9%)
Задача обеспечивает модульный подход к настройке Gulp. Нам нужно создать задачу для каждой зависимости, которую мы будем складывать по мере нахождения и установки других плагинов. Задача Gulp будет иметь следующую структуру -
gulp.task('task-name', function() {
//do stuff here
});
Где «имя-задачи» - это строковое имя, а «функция ()» выполняет вашу задачу. «Gulp.task» регистрирует функцию как задачу внутри имени и указывает зависимости от других задач.
Установка плагинов
Возьмем один плагин под названием minify-cssобъединить и минимизировать все сценарии CSS. Его можно установить с помощью npm, как показано в следующей команде -
npm install gulp-minify-css --save-dev
Для работы с «gulp-minify-css plugin» вам необходимо установить другой плагин под названием «gulp-autoprefixer», как показано в следующей команде -
npm install gulp-autoprefixer --save-dev
Чтобы объединить файлы CSS, установите gulp-concat, как показано в следующей команде -
npm install gulp-concat --save-dev
После установки плагинов вам необходимо записать зависимости в свой файл конфигурации следующим образом:
var autoprefix = require('gulp-autoprefixer');
var minifyCSS = require('gulp-minify-css');
var concat = require('gulp-concat');
Добавление задачи в файл Gulp
Нам нужно создать задачу для каждой зависимости, которую мы будем добавлять при установке плагинов. Задача Gulp будет иметь следующую структуру -
gulp.task('styles', function() {
gulp.src(['src/styles/*.css'])
.pipe(concat('styles.css'))
.pipe(autoprefix('last 2 versions'))
.pipe(minifyCSS())
.pipe(gulp.dest('build/styles/'));
});
Плагин concat объединяет файлы CSS, а плагин autoprefix указывает текущую и предыдущую версии всех браузеров. Он минимизирует все сценарии CSS из папки src и копирует в папку сборки, вызывая метод «dest» с аргументом, который представляет целевой каталог.
Чтобы запустить задачу, используйте следующую команду в каталоге вашего проекта -
gulp styles
Точно так же мы будем использовать другой плагин под названием 'gulp-imagemin' для сжатия файла изображения, который можно установить с помощью следующей команды -
npm install gulp-imagemin --save-dev
Вы можете добавить зависимости в свой файл конфигурации, используя следующую команду -
var imagemin = require('gulp-imagemin');
Вы можете создать задачу для определенной выше зависимости, как показано в следующем коде.
gulp.task('imagemin', function() {
var img_src = 'src/images/**/*', img_dest = 'build/images';
gulp.src(img_src)
.pipe(changed(img_dest))
.pipe(imagemin())
.pipe(gulp.dest(img_dest));
});
Изображения расположены в «src / images / ** / *», которые сохраняются в img_srcobject. Он передается другим функциям, созданным конструктором imagemin. Он сжимает изображения из папки src и копирует их в папку сборки, вызывая метод dest с аргументом, который представляет целевой каталог.
Чтобы запустить задачу, используйте следующую команду в каталоге вашего проекта -
gulp imagemin
Объединение нескольких задач
Вы можете запускать несколько задач одновременно, создав задачу по умолчанию в файле конфигурации, как показано в следующем коде -
gulp.task('default', ['imagemin', 'styles'], function() {
});
Файл Gulp настроен и готов к выполнению. Выполните следующую команду в каталоге вашего проекта, чтобы запустить указанные выше комбинированные задачи:
gulp
При запуске задачи с помощью указанной выше команды вы получите следующий результат в командной строке:
C:\work>gulp
[16:08:51] Using gulpfile C:\work\gulpfile.js
[16:08:51] Starting 'imagemin'...
[16:08:51] Finished 'imagemin' after 20 ms
[16:08:51] Starting 'styles'...
[16:08:51] Finished 'styles' after 13 ms
[16:08:51] Starting 'default'...
[16:08:51] Finished 'default' after 6.13 ms
[16:08:51] gulp-imagemin: Minified 0 images
Метод Watch используется для отслеживания ваших исходных файлов. При внесении любых изменений в исходный файл часы запускают соответствующую задачу. Вы можете использовать задачу «по умолчанию», чтобы отслеживать изменения в файлах HTML, CSS и JavaScript.
Обновить задачу по умолчанию
В предыдущей главе вы узнали, как проглотить объединение задач с помощью задачи по умолчанию. Мы использовали gulp-minify-css, gulp-autoprefixer и gulp-concatplugins и создали задачу стилей для минимизации файлов CSS.
Чтобы просмотреть файл CSS, нам нужно обновить задачу «по умолчанию», как показано в следующем коде:
gulp.task('default', ['styles'], function() {
// watch for CSS changes
gulp.watch('src/styles/*.css', function() {
// run styles upon changes
gulp.run('styles');
});
});
Все файлы CSS в work/src/styles/ папка будет отслеживаться, и после внесения изменений в эти файлы будет выполняться задача стилей.
Выполнить задачу по умолчанию
Запустите задачу «по умолчанию», используя следующую команду.
gulp
После выполнения указанной выше команды вы получите следующий результат.
C:\work>gulp
[17:11:28] Using gulpfile C:\work\gulpfile.js
[17:11:28] Starting 'styles'...
[17:11:28] Finished 'styles' after 22 ms
[17:11:28] Starting 'default'...
[17:11:28] Finished 'default' after 21 ms
Всякий раз, когда в файлы CSS вносятся какие-либо изменения, вы получите следующий результат.
C:\work>gulp
[17:11:28] Using gulpfile C:\work\gulpfile.js
[17:11:28] Starting 'styles'...
[17:11:28] Finished 'styles' after 22 ms
[17:11:28] Starting 'default'...
[17:11:28] Finished 'default' after 21 ms
gulp.run() has been deprecated. Use task dependencies or gulp.watch task
triggering instead.
[17:18:46] Starting 'styles'...
[17:18:46] Finished 'styles' after 5.1 ms
Процесс просмотра останется активным и будет реагировать на ваши изменения. Вы можете нажатьCtrl+C, чтобы завершить процесс мониторинга и вернуться в командную строку.
Live Reload указывает изменения в файловой системе. BrowserSyncиспользуется для просмотра всех файлов HTML и CSS в каталоге CSS и выполнения оперативной перезагрузки страницы во всех браузерах при каждом изменении файлов. BrowserSync ускоряет рабочий процесс за счет синхронизации URL-адресов, взаимодействий и изменений кода на нескольких устройствах.
Установка плагина BrowserSync
Плагин BrowserSync обеспечивает кросс-браузерное внедрение CSS и может быть установлен с помощью следующей команды.
npm install browser-sync --save-dev
Настройка плагина BrowserSync
Чтобы использовать плагин BrowserSync, вам необходимо записать зависимость в файл конфигурации, как показано в следующей команде.
var browserSync = require('browser-sync').create();
Вам необходимо создать задачу, чтобы BrowserSync работал с сервером через Gulp. Поскольку вы используете сервер, вам необходимо сообщить BrowserSync о корне вашего сервера. Здесь мы используем базовый каталог как «build».
gulp.task('browserSync', function() {
browserSync.init({
server: {
baseDir: 'build'
},
})
})
Вы также можете внедрить новые стили в браузер, используя следующую задачу для файла CSS.
gulp.task('styles', function() {
gulp.src(['src/styles/*.css'])
.pipe(concat('style.css'))
.pipe(autoprefix('last 2 versions'))
.pipe(minifyCSS())
.pipe(gulp.dest('build/styles/'))
.pipe(browserSync.reload({
stream: true
}))
});
Перед созданием задачи для BrowserSync вам необходимо установить плагины с помощью диспетчера пакетов и записать зависимости в файл конфигурации, как определено в этой главе .
Когда вы закончите настройку, запустите BrowserSync и watchTask для возникновения эффекта перезагрузки в реальном времени. Вместо того, чтобы запускать две командные строки по отдельности, мы запустим их вместе, добавив browserSynctask вместе с watchTask, как показано в следующем коде.
gulp.task('default', ['browserSync', 'styles'], function (){
gulp.watch('src/styles/*.css', ['styles']);
});
Выполните следующую команду в каталоге своего проекта, чтобы выполнить указанные выше комбинированные задачи.
gulp
После запуска задачи с помощью указанной выше команды вы получите следующий результат в командной строке.
C:\project>gulp
[13:01:39] Using gulpfile C:\project\gulpfile.js
[13:01:39] Starting 'browserSync'...
[13:01:39] Finished 'browserSync' after 20 ms
[13:01:39] Starting 'styles'...
[13:01:39] Finished 'styles' after 21 ms
[13:01:39] Starting 'default'...
[13:01:39] Finished 'default' after 15 ms
[BS] 1 file changed (style.css)
[BS] Access URLs:
------------------------------------
Local: http://localhost:3000
External: http://192.168.1.4:3000
------------------------------------
UI: http://localhost:3001
UI External: http://192.168.1.4:3001
------------------------------------
[BS] Serving files from: build
Откроется окно браузера с URL-адресом http://localhost:3000/. Любые изменения, внесенные в файл CSS, будут отражены в командной строке, и браузер автоматически перезагрузится с измененными стилями.
В этой главе вы узнаете, как оптимизировать CSS и JavaScript. Оптимизация требуется для удаления ненужных данных (например, пробелов и неиспользуемых символов) из исходных файлов. Это уменьшает размер файлов и позволяет им загружаться быстрее.
Установите плагины для оптимизации CSS и JavaScript
Перейдите в каталог «work» из командной строки и установите плагины «gulp-uglify», «gulp-minify-css» и «gulp-concat», используя следующую команду:
npm install gulp-uglify gulp-minify-css gulp-concat
Объявить зависимости и создать задачи
В вашем файле конфигурации gulpfile.js, сначала объявите зависимости, как показано в следующем коде.
var gulp = require('gulp');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var minify = require('gulp-minify-css');
Затем вам нужно создать задачи для оптимизации CSS и JavaScript, как показано в следующем коде.
gulp.task('js', function(){
gulp.src('src/scripts/*.js')
.pipe(concat('script.js'))
.pipe(uglify())
.pipe(gulp.dest('build/scripts/'));
});
gulp.task('css', function(){
gulp.src('src/styles/*.css')
.pipe(concat('styles.css'))
.pipe(minify())
.pipe(gulp.dest('build/styles/'));
});
gulp.task('default',['js','css'],function(){
});
В js задача будет принимать .js файлы из src/scripts/папка. Он объединяет и искажаетjs файлы, затем производит build/scripts/script.js файл.
В CSS задача примет .css файлы из src/styles/папка. Он объединяет и минимизируетCSS файлы, затем производит build/styles/styles.css файл.
Выполнить задачи
Файл конфигурации настроен и готов к выполнению. Используйте следующую команду для запуска задачи.
gulp
Запустив задачу с помощью указанной выше команды, вы получите следующий результат в командной строке.
C:\work>gulp
[13:16:34] Using gulpfile C:\work\gulpfile.js
[13:16:34] Starting 'js'...
[13:16:34] Finished 'js' after 24 ms
[13:16:34] Starting 'css'...
[13:16:34] Finished 'css' after 6.05 ms
[13:16:34] Starting 'default'...
[13:16:34] Finished 'default' after 5.04 μs
В этой главе вы узнаете, как оптимизировать изображения. Оптимизация уменьшит размер изображений и поможет ускорить загрузку.
Установите плагины для оптимизации изображений
Перейдите в каталог «work» из командной строки и установите плагины «gulp-changed» и «gulp-imagemin», используя следующие команды.
npm install gulp-changed --save-dev
npm install gulp-imagemin --save-dev
Объявить зависимости и создать задачи
В вашем файле конфигурации gulpfile.js, сначала объявите зависимости, как показано в следующей команде.
var gulp = require('gulp');
var changed = require('gulp-changed');
var imagemin = require('gulp-imagemin');
Затем вам нужно создать задачи для оптимизации изображений, как показано в следующем коде.
gulp.task('imagemin', function() {
var imgSrc = 'src/images/*.+(png|jpg|gif)',
imgDst = 'build/images';
gulp.src(imgSrc)
.pipe(changed(imgDst))
.pipe(imagemin())
.pipe(gulp.dest(imgDst));
});
gulp.task('default',['imagemin'],function(){
});
В imageminзадача принимает изображения в формате PNG, JPG и GIF из папки src / images / и минимизирует их перед записью в место назначения. Вchanged()гарантирует, что каждый раз для минификации передаются только новые файлы. Глоток-изменился плагин обрабатывает только новые файлы и , следовательно , используемые драгоценное время.
Выполнить задачи
Файл конфигурации настроен и готов к выполнению. Используйте следующую команду для запуска задачи.
gulp
Запустив задачу с помощью указанной выше команды, вы получите следующий результат в командной строке.
C:\work>gulp
[15:55:49] Using gulpfile C:\work\gulpfile.js
[15:55:49] Starting 'imagemin'...
[15:55:49] Finished 'imagemin' after 23 ms
[15:55:49] Starting 'default'...
[15:55:49] Finished 'default' after 23 μs
[15:55:54] gulp-imagemin: Minified 1 images (saved 558.3 kB - 8.3%)
Gulp предоставляет несколько полезных плагинов для работы с HTML и CSS, JavaScript, графикой и некоторыми другими вещами, как описано в следующих таблицах.
Плагины HTML и CSS
Sr.No. | Плагин и описание |
---|---|
1 | autoprefixer Он автоматически включает префиксы к свойствам CSS. |
2 | gulp-browser-sync Он используется для просмотра всех файлов HTML и CSS в каталоге CSS и выполняет оперативную перезагрузку страницы во всех браузерах при каждом изменении файлов. |
3 | gulp-useref Он используется для замены ссылок на неоптимизированные скрипты или таблицы стилей. |
4 | gulp-email-design Он создает шаблоны электронной почты HTML, которые преобразуют стили CSS во встроенные. |
5 | gulp-uncss Он оптимизирует файлы CSS и находит неиспользуемые и повторяющиеся стили. |
6 | gulp-csso Это оптимизатор CSS, который минимизирует файлы CSS, что приводит к уменьшению размера файла. |
7 | gulp-htmlmin Он минимизирует файлы HTML. |
8 | gulp-csscomb Он используется для создания средства форматирования стилей для CSS. |
9 | gulp-csslint Он определяет линтер CSS. |
10 | gulp-htmlhint Он определяет валидатор HTML. |
Плагины JavaScript
Sr.No. | Плагин и описание |
---|---|
1 | gulp-autopolyfiller Это то же самое, что и autoprefixer, который включает необходимые полифиллы для JavaScript. |
2 | gulp-jsfmt Он используется для поиска определенных фрагментов кода. |
3 | gulp-jscs Он используется для проверки стиля кода JavaScript. |
4 | gulp-modernizr Он определяет, какие функции HTML, CSS и JavaScript может предложить браузер пользователя. |
5 | gulp-express Он запускает веб-сервер gulp express.js. |
6 | gulp-requirejs Он использует require.js для объединения модулей AMD require.js в один файл. |
7 | gulp-plato Он генерирует отчеты об анализе сложности. |
8 | gulp-complexity Он анализирует сложность и ремонтопригодность кода. |
9 | fixmyjs Исправляет результаты JSHint. |
10 | gulp-jscpd Он используется как детектор копирования / вставки для исходного кода. |
11 | gulp-jsonlint Это валидатор JSON. |
12 | gulp-uglify Он минимизирует файлы JavaScript. |
13 | gulp-concat Он объединяет файлы CSS. |
Плагины модульных тестов
Sr.No. | Плагин и описание |
---|---|
1 | gulp-nodeunit Он запускает модульные тесты узлов из Gulp. |
2 | gulp-jasmine Он используется для сообщения о проблемах, связанных с выводом. |
3 | gulp-qunit Он обеспечивает базовый вывод на консоль для тестов QUnit и использует модуль узла PhantomJS и плагин QUnit для запуска PhantomJS. |
4 | gulp-mocha Он определяет тонкую оболочку вокруг Mocha и запускает тесты Mocha. |
5 | gulp-karma В Gulp он устарел. |
Графические плагины
Sr.No. | Плагин и описание |
---|---|
1 | gulpicon Он генерирует спрайты из SVG и конвертирует их в PNG. |
2 | gulp-iconfont Он используется с веб-шрифтами для создания файлов WOFF, EOT, TTF из SVG. |
3 | gulp-imacss Он преобразует файлы изображений в URI данных и помещает их в один файл CSS. |
4 | gulp-responsive Он генерирует адаптивные изображения для разных устройств
|
5 | gulp-sharp Он используется для изменения и изменения размера ориентации и фона изображения. |
6 | gulp-svgstore Он объединяет файлы SVG в один с элементами <symbol>. |
7 | gulp-imagemin & gulp-tinypng Он используется для сжатия таких изображений, как PNG, JPEG, GIF, SVG. |
8 | gulp-spritesmith Он используется для создания таблицы спрайтов из набора изображений и переменных CSS. |
Плагины для компиляторов
Sr.No. | Плагин и описание |
---|---|
1 | gulp-less Он предоставляет LESS плагин для Gulp. |
2 | gulp-sass Он предоставляет плагин SASS для Gulp. |
3 | gulp-compass Он предоставляет плагин компаса для Gulp. |
4 | gulp-stylus Он используется для хранения стилуса в CSS. |
5 | gulp-coffee Он предоставляет плагин coffeescript для Gulp. |
6 | gulp-handlebars Он предоставляет плагин руля для Gulp. |
7 | gulp-jst Он предоставляет шаблоны подчеркивания в JST. |
8 | gulp-react Он определяет шаблоны Facebook React JSX в JavaScript. |
9 | gulp-nunjucks Он определяет шаблоны Nunjucks в JST. |
10 | gulp-dustjs Он определяет шаблоны Dust в JST. |
11 | gulp-angular-templatecache Он определяет шаблоны AngularJS в templateCache. |
Другие плагины
Плагин gulp-clean удаляет файлы и папки, а плагин gulp-copy копирует файлы из источника в новое место назначения.
Sr.No. | Плагин и описание |
---|---|
1 | gulp-grunt Он запускает задачи Grunt из Gulp.
|
2 | gulp-watch Он следит за файлами всякий раз, когда вносятся изменения. |
3 | gulp-notify Он уведомляет сообщение об ошибке всякий раз, когда задача не выполняется. |
4 | gulp-git Это позволяет использовать команды Git. |
5 | gulp-jsdoc Он создает документацию JavaScript для Gulp. |
6 | gulp-rev Он обеспечивает изменение статических ресурсов для имен файлов. |
7 | gulp-bump Увеличивает версии в пакете JSON. |
8 | gulp-bower-files Он используется для внедрения пакетов bower. |
9 | gulp-removelogs Он удаляет операторы console.log. |
10 | gulp-preprocess Он предварительно обрабатывает HTML, JavaScript и другие файлы в зависимости от контекста или конфигурации среды. |
11 | gulp-duration Он определяет продолжительность для задач Gulp. |
12 | gulp-changed & gulp-newer Он запускает измененные файлы и более новые файлы. |
13 | gulp-connect Он используется для запуска веб-сервера с LiveReload. |
14 | gulp-shell Он запускает команды оболочки. |
15 | gulp-ssh Он подключается с помощью задач SSH и SFTP. |
16 | gulp-zip Он сжимает файлы и папки. |
17 | глоток-чистый и глоток-копия |
18 | gulp-filesize Он определяет размер файла в удобочитаемом формате. |
19 | gulp-util Он предоставляет утилиты для плагинов gulp. |
В этой главе вы узнаете, как очистить сгенерированные файлы. Поскольку мы автоматически генерируем файлы, убедитесь, что ненужные файлы должны быть удалены перед запуском сборки. Эта процедура называетсяcleaning. Вdel для этой цели можно использовать плагин.
Установка плагинов del
В командной строке установите плагин, введя следующую команду.
npm install del --save-dev
Объявить зависимости и создать задачи
В вашем файле конфигурации gulpfile.js, объявите зависимости, как показано в следующей команде.
var del = require('del');
Затем создайте задачу, как показано в следующем коде.
gulp.task('clean:build', function() {
return del.sync('build');
});
Вышеупомянутая задача очистит всю сборку. Задача очистки очищает все захваченные изображения и удаляет все старые файлы, присутствующие в сборке.
Можно очистить только определенный файл или папку и оставить некоторые из них нетронутыми, как показано в следующем коде.
gulp.task('clean:build', function() {
//return del.sync('build');
return del([
'build/temp/',
// instructs to clean temp folder
'!build/package.json'
// negate to instruct not to clean package.json file ]);
});
В приведенной выше задаче только temp папка будет очищена, оставив package.json нетронутый.