जब मैं नीचे कोड चलाता हूं तो दोनों फ़ंक्शन चलते हैं और दोनों टर्मिनल पर सांत्वना देते हैं। क्या कोई इसमें मेरी मदद कर सकता है? उनका क्या कसूर है? मैं एक्सपो रिएक्ट-नेटिव में फ़ायरबेस लाइब्रेरी का उपयोग कर रहा हूं।

firebase.database().ref('pendingInvoices/').push(invoice).then(function(data) {
            //success callback
            console.log('Successfuly pushed')
            dispatch(updatePendingInvoices(invoice))
            Alert.alert('Successfully added to Invoices', 'Please clear your invoice first to completely register', [{ text: 'Ok' }])
        }).catch(function(error) {
            //error callback
            console.log('Something went wrong')
            Alert.alert("Can't book package.", 'Please check your internet connection!', [{ text: 'OK', style: 'destructive' }])
        })
0
Muhammad Rafeh Atique 12 मई 2021, 16:01
ऐसा बहुत कम लगता है कि किसी वादे के then() और catch() दोनों ब्लॉक निष्पादित हों। क्या आप सुनिश्चित हैं कि पूरे ब्लॉक को कई बार नहीं बुलाया जा रहा है? क्या ऐसा कोई तरीका है जिससे आप किसी ऐसे स्थान पर पुनरुत्पादन स्थापित कर सकें जहां हम उसे देख सकें?
 – 
Frank van Puffelen
12 मई 2021, 17:51
इसने @FrankvanPuffelen को हल किया। यह प्रेषण विवरण के कारण था जो अपवाद फेंक रहा था।
 – 
Muhammad Rafeh Atique
12 मई 2021, 18:49

1 उत्तर

सबसे बढ़िया उत्तर

ऐसा तब होता है जब then विधि स्वयं एक अपवाद फेंकती है जैसा कि नीचे दिया गया छोटा डेमो दिखाता है

new Promise(resolve => resolve())
  .then(() => {
     console.log("resolved");
     throw "oh no something went wrong"
  })
  .catch(ex => {
    console.log("in catch:", ex);
  })

तो, आपके कोड को देखकर मुझे लगता है कि निम्नलिखित 2 पंक्तियों में से कोई एक त्रुटि फेंक रहा है

dispatch(updatePendingInvoices(invoice))
Alert.alert('Successfully added to Invoices', 'Please clear your invoice first to completely register', [{ text: 'Ok' }])

अधिक संभावना है कि पहली पंक्ति मैं सोचूंगा!

3
Jamiec 12 मई 2021, 17:54
बहुत बहुत धन्यवाद भाई !! प्रेषण के कारण यह त्रुटि फेंक रहा है लेकिन प्रेषण कैसे त्रुटि फेंक रहा है ??? क्या आप व्याख्या कर सकते हैं?
 – 
Muhammad Rafeh Atique
12 मई 2021, 18:48
मुझे खेद है, मुझे नहीं पता कि dispatch क्या है।
 – 
Jamiec
12 मई 2021, 18:49
ओके नो प्रॉब्लम भाई, यह रिएक्ट-नेटिव ऐप में एक रिडक्स है।
 – 
Muhammad Rafeh Atique
12 मई 2021, 18:51