Z dokumentacji:
Zapytania Mongoose nie są obietnicami. Mają .then()
funkcja co i async/await jako udogodnienie. Jednak w przeciwieństwie do obietnic, wywołanie funkcji .then()
w aquery może wykonać zapytanie wiele razy.
Więc w przeciwieństwie do prawdziwej obietnicy, jeśli wywołasz then()
wiele razy w zapytaniu, faktycznie wykonujesz zapytanie (lub aktualizujesz) wiele razy.
Jeśli chcesz rzeczywistej obietnicy, wywołaj exec()
w zapytaniu.
let promise = Test.findOne({}).exec();