Как исправить возврат mongoose.find?Я думаю это ничего не вернет - PullRequest
0 голосов
/ 14 апреля 2019

У учителей есть этот код раздела, и я хочу зациклить название этого раздела, используя foEach, map или filter

"section": [
        {
            "name": "AA12",
            "subjects": [
                "PJ"
            ]
        },
        {
            "name": "AA13",
            "subjects": [
                "DFM",
                "PJ"
            ]
        }
    ]

Расписание имеет этот массив.

{
    "_id": {
        "$oid": "5cb31e0c7ee5c600173d5812"
    },
    "date": [
        {
            "time1": "ISM",
            "time2": "DBMA",
            "time3": "IRA",
            "time4": "BB"
        },
        {
            "time1": "DFM",
            "time2": "ITP",
            "time3": "DBE",
            "time4": "PJ"
        },
        {
            "time1": "ISM",
            "time2": "DBMA",
            "time3": "ITP",
            "time4": "DBE"
        },
        {
            "time1": "PJ",
            "time2": "IRA",
            "time3": "IRA",
            "time4": "ISM"
        },
        {
            "time1": "ITP",
            "time2": "DBMA",
            "time3": "DBE",
            "time4": "PJ"
        }
    ],
    "sectionID": "AA12",
    "__v": 0
}

Я перебираю раздел. Если имя секции включено в расписание sectionID, будет возвращена дата

Я использую асинхронную функцию, и она ничего не возвращает, показывая "name is {}". Я только начинающий в асинхронной функции.

let timetableFunc = async (name) => {
                            let a = timetable.find({ sectionID: name }).exec()
                            return a.then(result => {
                                if (result[0] !== undefined) {
                                    console.log(result[0])
                                  return result[0]
                                } 
                            })
                        }

                        let asyncf = async () => {

                            let arr = await sections[0].section.map(sect => {
                                let name = timetableFunc(sect.name);
                                 console.log(`name is ${JSON.stringify(name)}`);
                            })

                        }

                        asyncf()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...