Da documentação:
As consultas do Mongoose não são promessas. Eles têm um.then()
função para co e async/await como uma conveniência. No entanto, ao contrário das promessas, chamar o.then()
de uma consulta pode executar a consulta várias vezes.
Então, diferente de uma promessa real, se você chamar
then()
várias vezes na consulta, você realmente executa a consulta (ou atualização) várias vezes. Se você quiser uma promessa real, chame
exec()
na consulta. let promise = Test.findOne({}).exec();