MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Überprüfen Sie, ob das Dokument in Mongodb existiert, indem Sie es7 async/await verwenden

Ok, hier ist, wie ich es zum Laufen gebracht habe:

async function userExistsInDB(email, password) {
    let db = await MongoClient.connect('mongodb://127.0.0.1:27017/notificator');
    try {
        let collection = db.collection('users');
        let userCount = (await collection.find(
            {
                email: email,
                password: password
            }).limit(1).count());
        return userCount > 0;
    } finally {
        db.close();
    }
}

Und weil die async Schlüsselwort in der Funktionsdeklaration Garantien dass der zurückgegebene Wert ein Promise ist , ist die einzige Möglichkeit, das wirklich zurückgegebene Ergebnis dieser Funktion zu erhalten:

let result = await this.userExistsInDB(email, password); innerhalb einer anderen Funktion deklariert async .