⊗tlGpBsFW 14 of 14 menu

Наблюдение за изменением документов в Gulp

Не е много удобно всеки път да се извиква команда в конзолата, когато е необходимо да се извърши някаква трансформация - в крайна сметка при писането на код това се налага да се прави много често.

Затова в Gulp е вградена специална функция watch за наблюдение на промените във файловете. При промяна на който и да е от наблюдаваните файлове, съответната задача ще се стартира автоматично.

Нека разгледаме пример за трансформиране на LESS в CSS. Първо, нека включим всичко необходимо:

let {src, dest, watch} = require('gulp'); let less = require('gulp-less');

Сега нека направим задача за трансформиране:

function task(cb) { return src('src/*.less') .pipe(less()) .pipe(dest('dist')); }

Сега ще изнесем анонимна функция, вътре в която ще следим за промени във файловете ни, извиквайки в този случай нашата задача:

exports.default = function() { watch('src/*.less', task); };

След стартиране в командния ред ще се върти "безкрайна" задача. Това означава, че в този терминал няма да може да се въвеждат други команди. Можете да прекъснете изпълнението на такава задача, като натиснете в терминала комбинацията Ctrl + C.

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

exports.default = function() { watch('src/*.less', task1); watch('src/*.sass', task1); };

Или за една група може да се изпълни серия от задачи:

exports.default = function() { watch('src/*.less', series(task1, task2)); };

Нека предположим, че имате група от JavaScript файлове. Направете така, че тези файлове да се сливат в един файл, а след това да се извърши минимизация на този файл. Направете така, че задачата да се изпълнява при промяна на който и да е от нашите файлове.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне