7
मैं इस तरह एक समारोह से एक वादा लौट रहा हूँ कर रहे हैं:तक प्रतीक्षा वादा और नेस्ट thens पूरा
resultPromise = dgps.utils.save(opportunity, '/api/Opportunity/Save', opportunity.dirtyFlag).then(function() {
self.checklist.saveChecklist(opportunity).then(function() {
self.competitor.save(opportunity.selectedCompetitor()).then(function ... etc.
return resultPromise;
चलो कहते हैं कि इसके बाद के संस्करण समारोह को बचाने कहा जाता है करते हैं।
कॉलिंग फ़ंक्शन में मैं पूरी श्रृंखला को पूरा करने के लिए प्रतीक्षा करना चाहता हूं और फिर कुछ करना चाहता हूं। मेरे कोड वहाँ इस तरह दिखता है:
var savePromise = self.save();
savePromise.then(function() {
console.log('aftersave');
});
नतीजा यह है कि 'aftersave' कंसोल के लिए भेज जबकि वादों की श्रृंखला अभी भी चल रहा है है।
पूरी श्रृंखला पूरी होने के बाद मैं कुछ कैसे कर सकता हूं?
क्या वहां सशर्त है तो क्या होगा? क्या आपको स्थगित वस्तु की आवश्यकता नहीं होगी? – FlavorScape
यह पूछे जाने वाले प्रश्न का उत्तर नहीं है। सवाल यह था कि श्रृंखला को समाप्त करने के लिए कैसे इंतजार करना है। बस श्रृंखला में और तत्व जोड़ना एक समाधान नहीं है और अक्सर ठीक से काम नहीं करेगा। – MeanEYE
@MeanEYE श्रृंखला पर 'फिर' करके अंत तक चेन के लिए टी प्रतीक्षा करें। यह समस्या हल करता है (हालांकि जैसा कि आपने देखा है, यह शाब्दिक प्रश्न का उत्तर नहीं देता है, लेकिन सवाल वास्तव में एक समस्या के बारे में था)। –