sql >> Databáze >  >> NoSQL >> MongoDB

Jaký je správný způsob, jak vytvořit synchronní dotaz MongoDB v Node.js?

ES 6 (Uzel 8+)

Můžete použít async/wait

await Operátor pozastaví provádění asynchronní funkce, dokud není Promise vyřešen a vrátí hodnotu.

Tímto způsobem bude váš kód fungovat synchronně:

const query = MySchema.findOne({ name: /tester/gi });
const userData = await query.exec();
console.log(userData)


Starší řešení - červen 2013;)

Nyní je k dispozici Mongo Sync, toto je správný způsob, jak vytvořit synchronní dotaz MongoDB v Node.js.

Na to samé používám toto. Stačí napsat metodu synchronizace jako níže:

var Server = require("mongo-sync").Server;
var server = new Server('127.0.0.1');
var result = server.db("testdb").getCollection("testCollection").find().toArray();
console.log(result);

Poznámka:Závisí na uzlovém vláknu a ve Windows 8 jsou s ním některé problémy.

Hodně štěstí při kódování :)



  1. mongoose :vyhledejte data smyčkováním na řadě modelů

  2. Jak převést pohled MongoDB na sbírku

  3. Mongoose - Uložit pole řetězců

  4. Synchronizace dat klastrů HBase pomocí nástroje HashTable/SyncTable