प्रतीक्षा के साथ अतुल्यकालिक कॉलबैक हैंडलिंग
कुछ परिदृश्यों में, कॉलबैक का उपयोग करते समय जैसे:
test() { api.on( 'someEvent', function( response ) { return response; }); }
आपको अतुल्यकालिकता को शामिल करने की आवश्यकता हो सकती है। इस फ़ंक्शन को एसिंक्रोनस बनाने और प्रतीक्षा का उपयोग करने के लिए, आपको पहले यह सुनिश्चित करना होगा कि कॉलबैक फ़ंक्शन (someEvent) एक वादा लौटाता है। ऐसा इसलिए है क्योंकि एसिंक फ़ंक्शन एसिंक्रोनस संचालन को पूरा करने के वादों पर निर्भर करते हैं।
api.on() का एक संशोधित संस्करण:
function apiOn(event) { return new Promise(resolve => { api.on(event, response => resolve(response)); }); }
इस अद्यतन फ़ंक्शन का उपयोग करके, अब आप test() को एक एसिंक्रोनस फ़ंक्शन के रूप में संशोधित कर सकते हैं:
async function test() { return await apiOn( 'someEvent' ); }
हालाँकि, एसिंक्रोनस फ़ंक्शन भी वादे लौटाते हैं, इसलिए परीक्षण() का वास्तविक परिणाम मान एक वादा है जिसे किसी अन्य एसिंक्रोनस फ़ंक्शन के भीतर हल किया जा सकता है:
async function whatever() { // snip const response = await test(); // use response here // snip }
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3