• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
    • Questions
    • Teachers
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

176
Views
llamar al mapa en una colección después de que se haya devuelto frente al encadenamiento del mapa usando el punto

Esto funciona como se esperaba:

 let responses = await Response.find({ responder_id: req.user._id, }).populate({ path: "query_id", select: ["query_type", "content"] }); responses = responses.map((response) => { return response.query_id; });

Pero el siguiente no:

 let responses = await Response.find({ responder_id: req.user._id, }) .populate({ path: "query_id", select: ["query_type", "content"] }) .map((response) => { return response.query_id; });

Lo único que se me ocurre es que tal vez tenga algo que ver con la naturaleza asíncrona de estas funciones.

almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

La prioridad no es como crees que es. Lo que se espera no es Response.find(...) , sino Response.find(...).populate(...) . Con esto en mente, esta es la forma de escribirlo correctamente en la segunda forma (con la única diferencia de un par de paréntesis):

 let responses = (await Response.find({ responder_id: req.user._id, }) .populate({ path: "query_id", select: ["query_type", "content"] })) .map((response) => { return response.query_id; });

Sin embargo, sería necesario volver a sangrar para que esto sea legible. El primer fragmento podría ser más fácil de leer de todos modos.

almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error