Från dokumentationen:
Mongoose-frågor är inte löften. De har en
.then()
funktion för co och async/await som en bekvämlighet. Men till skillnad från löften, anropar aquerys.then()
kan köra frågan flera gånger.
Så till skillnad från ett faktiskt löfte, om du anropar then()
flera gånger på frågan, kör du faktiskt frågan (eller uppdaterar) flera gånger.
Om du vill ha ett verkligt löfte, ring exec()
på frågan.
let promise = Test.findOne({}).exec();