Ergebnis 1 bis 3 von 3
-
25-11-2016, 09:38 #1
Grünschnabel
- registriert
- 25-11-2016
- Beiträge
- 2
Promises zum ersten mal einsetzen/Fehler
Hallo Leute, ich würde gerne zum ersten mal Promise einsetzen und kriege das nicht so recht hin.
Situation: Aus meiner Router kommt bsp. eine Anfrage: getBooks.
Die ganze Abfrage mit callback, möchte ich in einem promise verstecken.
D.h. bei myPromise.then(....sende eine Antwort).catch(....sende status 500)
So stelle ich mir das vor. Vllt. gibt es schönere Wege.
mein Code
Code:function getBooks(req, res) { /*Promise ansprechen*/ promiseBooks(req, res); } function promiseBooks(req, res){ /*Promise starten*/ return Bookmark.find({}).exec(); } /*Promise ausführen*/ promiseBooks(req, res).then(function(books){ if(books.length===0){ logger.warn('No books availible'); res.status(200).json({ bookmarks: books }); }else if(books === undefined){ res.status(500).json({ bookmarks: bookmarks }); }else{ res.status(200).json({ bookmarks: books }); } }) .catch(function(err){ logger.error({error:err},'FAIL TO RETRIVE BOOKS'); res.status(500).json({ books: books }); });
Habe ich hier ein Design-Fehler? wie könnte ich am besten die Callsbacks verstecken in diesem Fall?
Danke für jeden Tipp.
-
25-11-2016, 10:17 #2
AW: Promises zum ersten mal einsetzen/Fehler
So wie der Code da steht stimmt das auch. die Variablen werden schließlich nirgends definiert.
bei Promises geht es nicht darum Callbacks zu verstecken, sondern um ein effizienteres Arbeiten damit.
Und dann ist deine promiseBooks() Funktion auch ziemlich nutzlos, so wie sie da steht.
-
25-11-2016, 13:28 #3
AW: Promises zum ersten mal einsetzen/Fehler
hier gibt es ein ganz einfaches beispiel: http://forum.jswelt.de/javascript/62...usf-hrung.html (Teils asynchrone, teils synchrone Ausführung)
Das deutsche Javascript Forum http://forum.jswelt.de
Ähnliche Themen
-
[HOW-TO/TUTORIAL] How do Promises Work? (15.11.2015)
Von mikdoe im Forum Links & Tutorials mit Tipps & Tricks zu JavaScript, CSS, PHP, MySQLAntworten: 0Letzter Beitrag: 06-12-2015, 07:45 -
Promises
Von Früchtemüsli im Forum JavaScriptAntworten: 33Letzter Beitrag: 08-02-2013, 14:06 -
Variable einsetzen
Von donstephano im Forum JavaScriptAntworten: 1Letzter Beitrag: 09-01-2007, 15:51 -
Javascript in HP mit frames einsetzen
Von anni2006 im Forum AllgemeinesAntworten: 1Letzter Beitrag: 28-12-2006, 17:48 -
selectbox.value in textfeld einsetzen
Von Hawk18x im Forum JavaScriptAntworten: 3Letzter Beitrag: 17-01-2006, 09:36
Lesezeichen