sono le risposte a questa domanda ancora attuale: How can I promisify the MongoDB native Javascript driver using bluebird?È ancora necessario promettere il driver MongoDB?
Non so da quando questo è stato aggiornato, ma 2,0 autista JS per MongoDB ha una proprietà nelle opzioni oggetto promiseLibrary
: http://mongodb.github.io/node-mongodb-native/2.0/api/MongoClient.html
E la maggior parte metodi/funzioni restituiscono una promessa, come ad esempio Cursor.toArray()
.
Tuttavia, non riesco a trovare un esempio utilizzando questa nuova opzione, ma non sarebbe più semplice utilizzando solo:
MongoClient.connect('mongodb://URL', { promiseLibrary: require('bluebird') });
O è questa definizione non va? - In tal caso, come dovrebbe essere definito correttamente?
Aggiornamento:
Il codice è in esecuzione su io.js quindi non potrebbe nemmeno bisogno di specificare una promiseLibrary
come il conducente avrebbe utilizzato promesse ES6? - Tuttavia, le promesse presumibilmente Bluebird sono più lenti:
Why are native ES6 promises slower and more memory-intensive than bluebird?
Update2: Ho aggiunto il tag Bluebird - forse i ragazzi che lavorano su Bluebird in grado di fornire ulteriori dettagli se promisifying è davvero meglio che usare di MongoDB proprio implementazione?
Personalmente mi piacerebbe vedere un esempio delle differenze. Risparmiare 5 minuti per condividere? –