Gulp में काम करते समय, आपको यह त्रुटि मिल सकती है:
निम्नलिखित कार्य पूरे नहीं हुए... क्या आप async पूर्णता का संकेत देना भूल गए? यह Gulp 4 में सभी कार्यों के स्वचालित रूप से एसिंक्रोनस होने के कारण होता है।
सिंक्रोनस फ़ंक्शन एक के बाद एक निष्पादित होते हैं, और प्रत्येक फ़ंक्शन को पिछले के पूरा होने तक इंतजार करना पड़ता है। एसिंक्रोनस फ़ंक्शन, दूसरी ओर, पिछले फ़ंक्शन के परिणाम की प्रतीक्षा करते हुए चलना शुरू कर सकते हैं।
यह प्रक्रियाओं को अधिक कुशल बनाता है क्योंकि वे अवरुद्ध नहीं होतीं। लेकिन यह जानने के लिए कि कोई फ़ंक्शन कब पूरा हुआ, हमें स्पष्ट संकेतक चाहिए कि वे पूर्ण हो चुके हैं। अधिकांश Gulp कार्य जैसे src() या dest() एक Node स्ट्रीम लौटाते हैं, इसलिए आपको उनकी चिंता करने की आवश्यकता नहीं है।
हालांकि, यदि आपके पास कोई कस्टम फ़ंक्शन है जो स्ट्रीम नहीं लौटाता, तो आपको उसके अंत में एक कॉलबैक फ़ंक्शन जोड़ना होगा। अन्यथा आपको वह त्रुटि संदेश मिलेगा।
त्रुटि ठीक करने के लिए, इस उदाहरण की तरह एक कॉलबैक फ़ंक्शन जोड़ें:
function helloWorld(cb){ console.log('Hellooooo world!'); cb(); } इस helloWorld फ़ंक्शन में, हमने cb() कॉलबैक फ़ंक्शन को पैरामीटर के रूप में जोड़ा है, और फिर फ़ंक्शन के अंत में इसे लागू किया है। इसे जोड़ने से async पूर्णता का संकेत मिलेगा, और वह त्रुटि ठीक हो जाएगी।
यदि आप Gulp सेटअप के बारे में अधिक गहन जानकारी चाहते हैं, तो मेरा कोर्स 'Gulp 4 for Beginners' देखें!