Как перейти к вложенному объекту - PullRequest
0 голосов
/ 04 октября 2019

У меня проблема при попытке перехода к свойству из вложенного объекта с использованием nodejs и mongodb.

Вот моя функция:

async function obtenerInscripciones(username) {

    const inscripcionesDB = await Inscripcion.find({ username: username._id }).populate({
        path: 'clase',
        select: '_id',
    })
    console.log(inscripcionesDB, WORKING); // **working**
    console.log(inscripcionesDB.clase._id, NOT WORKING); // **undefined**
    return inscripcionesDB;
}

Мой вывод такой, как этот

{
    estado: 'CANCELADA',
    _id: 5d959abc0d3ee404889d2b28,
    clase: { _id: 5d82e5525770f32b5024665a },
    username: 5d917b2cb531bc2a94a3d476,
  },  **WORKING**

(node:18380) UnhandledPromiseRejectionWarning: TypeError: Cannot read property '_id' of undefined, NOT **WORKING**

Что я делаю не так?

1 Ответ

0 голосов
/ 04 октября 2019

Слово «асинхронный» перед функцией означает одну простую вещь: функция всегда возвращает обещание.

async function obtenerInscripciones(username) {
    return await Inscripcion.find({
        username: username._id
    }).populate({
        path: 'clase',
        select: '_id',
    })
}

obtenerInscripciones(username).then((response) => {
    console.log('response', response)
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...