Gulp.js
Тип | Toolkit |
---|---|
Розробник | Fractal and contributors of the GitHub community |
Стабільний випуск | 4.0.0 (31 грудня, 2017; 6 років тому (2017-12-31)[1]) |
Платформа | Cross-platform |
Операційна система | кросплатформова програма |
Мова програмування | JavaScript |
Доступні мови | JavaScript |
Ліцензія | MIT License[2] |
Репозиторій | github.com/gulpjs/gulp |
Вебсайт | gulpjs.com |
Gulp — таск-менеджер для автоматичного виконання завдань (наприклад, мініфікаціі, тестування, об'єднання файлів), написаний на мові програмування JavaScript. Програмне забезпечення використовує командний рядок для запуску завдань, визначених у файлі Gulpfile[3]. Створено як відгалуження від проекту Grunt, щоб взяти з нього найкращі практики[4]. Поширюється через менеджер пакетів Npm під MIT ліцензією[5].
На відміну від Grunt код завдань записують JavaScript кодом, а не у вигляді конфігураційного файлу[6].
Станом на 2017-й рік налічується більше 3100 плагінів для Gulp[7].
Взаємодії між частинами програми реалізують за допомогою оператора .pipe()
, виконуючи по одному завданню за раз, не зачіпаючи вихідні файли. Це дає можливість комбінації плагінів в будь-якій послідовності і кількості.
Так само в Gulp вдосконалена система збирання. Це означає, що крім запуску завдань, можна також копіювати файли з місця на місце, компілювати і розгортати проект в новому оточенні.
Анатомія gulpfile
Файл містить підключення плагінів, функції завдань та завдання за замовчуванням наприкінці.
Плагіни
Будь-який необхідний плагін підключається на початку файлу. Перед цим плагіни повинні бути інстальовані командою npm install.
[8][9]
//Adding dependencies var gulp = require ( 'gulp'); var gutil = require ( 'util-gulp');
Завдання
Завдання створюють за допомогою gulp.task, в якому першим аргументом є назва завдання, а другим аргументом анонімна функція.
[10]
//Defining tasks gulp.task ( 'taskName', function () { //do something });
Можна написати завдання яке виконує декілька функцій. Список функцій передаються 2 аргументом у вигляді масиву.
function fn1 () { // do something } function fn2 () { // Do something else } // Task with array of function names gulp.task ( 'taskName', ['fn1','fn2']);
Див. також
- Grunt (software)[en]
Примітки
- ↑ gulp changelog. Архів оригіналу за 1 травня 2019. Процитовано 11 січня 2018.
- ↑ License to github.com (англ.). Архів оригіналу за 1 травня 2019. Процитовано 30 травня 2016.
- ↑ An Introduction to Gulp.js. Архів оригіналу за 14 серпня 2018. Процитовано 13 серпня 2018.
- ↑ / Gulp - як ковток свіжого повітря після Grunt. Архів оригіналу за 12 березня 2017. Процитовано 13 серпня 2018.
- ↑ LICENSE. Архів оригіналу за 1 травня 2019. Процитовано 13 серпня 2018.
- ↑ Gulp або Grunt, та все одно. Архів оригіналу за 12 березня 2017. Процитовано 13 серпня 2018.
- ↑ packages with keyword 'gulpplugin'
- ↑ gulpjs/gulp. GitHub. Архів оригіналу за 4 січня 2020. Процитовано 23 вересня 2016.
- ↑ Maynard, Travis (2015). Getting Started with Gulp. Packt Publishing Ltd. ISBN 9781784393472.
- ↑ gulp/API.md at 4.0 · gulpjs/gulp · GitHub. GitHub. 12 травня 2016. Архів оригіналу за 6 березня 2017. Процитовано 14 грудня 2016.