/ / फिर मैं कैसे () एक वादा पर? - वादा, rsvp.js, rsvp- वादा

मैं फिर () एक वादे पर कैसे करूँ? - वादा, rsvp.js, आरएसवीपी-वादा

मैं एक ब्राउज़र में RSVP.js का उपयोग कर रहा हूँ।

मेरा एक वादा है applicationReady

मेरा एक और वादा है loadSomeData

मेरा एक अंतिम वादा है, configureUI

प्रत्येक यह काम करने के लिए पिछले वादे पर निर्भर करता है। मुझे श्रृंखला में चलाने के लिए ये तीन वादे कैसे मिलते हैं? मैं स्पष्ट रूप से कुछ याद कर रहा हूं।

धन्यवाद!

उपाय:

ठीक है, यहाँ जवाब है:

काम नहीं करता:

applicationReady
.then(loadSomeData)
.then(configureUI)

काम करेगा:

applicationReady
.then(function() { return loadSomeData; })
.then(function() { return configureUI; })

एक वादा और एक फ़ंक्शन के बीच एक अंतर है जो एक वादा वापस करता है। बुमेर कि then() doesn "टी यह अपने आप को पता है। क्या तब (वादा) के लिए usecase है?

उत्तर:

उत्तर № 1 के लिए 1

मेरा एक वादा है, मेरा एक और वादा है, मेरा एक आखिरी वादा है। प्रत्येक पिछले वादे पर निर्भर करता है कि वह काम करे।

इसका कोई अर्थ नही बन रहा है। यदि आपके पास पहले से ही एक वादा है, तो इसका मतलब है कि आपने सभी तीन प्रक्रियाएं शुरू की हैं जिनके भविष्य के परिणाम अब आप हाथ में पकड़े हुए हैं। चाहे वह प्रक्रिया किसी अन्य वादे पर निर्भर हो (या नहीं) आपकी ज़िम्मेदारी में नहीं है - आपके पास केवल परिणाम हैं।

श्रृंखला में चलने के लिए मुझे ये तीन वादे कैसे मिले?

आप एक वादा "रन" नहीं कर सकते। एक वादा केवल एक परिणाम का प्रतिनिधित्व करता है। आप कर सकते हैं हालांकि एक समारोह चलाते हैं। "पिछले कार्य पर निर्भर" कहने से, आपका मतलब है कि पिछले वादे के परिणाम को तर्क के रूप में चलाने (और अगले "आश्रित" वादे) को बनाने के लिए फ़ंक्शन में पारित किया जाता है - और यह सिर्फ क्या है .then() कर देता है।

तब (वादा) के लिए usecase क्या है?

वहां कोई नहीं है। यदि आप एक समारोह पास नहीं करते हैं, then कुछ नहीं करता।


जवाब के लिए 0 № 2

ठीक है, यहाँ जवाब है:

काम नहीं करता:

applicationReady
.then(loadSomeData)  // loadSomeData is a promise
.then(configureUI)   // configureUI is a promise

काम करेगा:

applicationReady
.then(function() { return loadSomeData; })
.then(function() { return configureUI; })

एक वादा और एक फ़ंक्शन के बीच एक अंतर है जो एक वादा वापस करता है।