2017-12-19 6 views
0

mit habe ich diesen CodeFehler auf ‚‘ Rückruf nach der eingestellten Daten in Feuerbasis Datenbank node.js

app.get('/updateSaving/:name/:amount' , function(req,res){ 
    console.log('sending request update saving'); 
    var d = new Date(); 
    date = d.toString(); 
    firebase.database().ref('saving/'+ req.params.name).set({ 
    name : req.params.name, 
    amount: req.params.amount, 
    last_date : date 
}).then(function(res){ 
    console.log('Saving Updated'); 
    res.json({ success: 'true' }); 
}); 
}) 

Nachdem ich diesen Code genannt, die Feuerbasis den Rekord hatte, aber warum ich habe Fehler auf meinem Rückruf res.json({ success: 'true' });?
Dies ist der Fehler UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 4): TypeError: Cannot read property 'json' of undefined

Antwort

0

Die Reference.set() method returns a void promise. Sie deklarieren res in Ihrem then() Handler, der die res von app.get() versteckt.

Die Lösung ist die res in Ihrer set() Auflösung Handler zu entfernen:

app.get('/updateSaving/:name/:amount' , function(req,res){ 
    console.log('sending request update saving'); 
    var d = new Date(); 
    date = d.toString(); 
    firebase.database().ref('saving/'+ req.params.name).set({ 
    name : req.params.name, 
    amount: req.params.amount, 
    last_date : date 
}).then(function(){ 
    console.log('Saving Updated'); 
    res.json({ success: 'true' }); 
}); 
}) 
+0

Großen zu hören. Wenn meine Antwort nützlich war, klicken Sie auf den Upvote-Button links davon. Wenn es Ihre Frage beantwortet hat, klicken Sie auf das Häkchen, um es zu akzeptieren. Auf diese Weise wissen andere, dass Ihnen (ausreichend) geholfen wurde. –

Verwandte Themen