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 ফাইলের একটি গ্রুপ আছে। সেগুলিকে একটি ফাইলে মার্জ করা তারপর সেই ফাইলের মিনিমাইজেশন সম্পন্ন হয় এমনটি করুন। আমাদের যেকোনো ফাইল পরিবর্তিত হলে টাস্কটি যাতে実行 হয় সেভাবে করুন।