Nodejs Mongodb в функции возвращает неопределенное значение, а также обратный вызов, а не функцию - PullRequest
0 голосов
/ 03 октября 2018

Я новичок в nodejs, изначально я пытался вернуть значение из функции, используя mongodb и nodejs через return, но похоже, что это не работает .. Поэтому я исследовал это и узнал о обратном вызове.Я пробовал это разными способами, но, похоже, он у меня не работает.

function getLastCity(otherid, myid, callback) {
    MongoClient.connect(dburl, {
        useNewUrlParser: true
    }, function (err, db) {
        if (err) throw err;
        var dbo = db.db("places");
        var query = {
            $or: [{
                    'city.xId': otherid,
                    'city.yId': myid,
                },
                {
                    'city.yId': otherid,
                    'city.xId': myid,
                }
            ]
        };

        dbo.collection("cities")
            .find(query)
            .limit(1)
            .sort({
                timestamp: -1
            })
            .toArray(function (err, result) {
                if (err) throw err;
                db.close();
                callback(result);
            });
    });
}

var lastCity = getLastCity('asdasd', 'asasd', function (result) {
    console.log(result);
});

Я проверил в console.log, что все значения вызываются и обрабатываются, и их можно легко отобразить с помощью консоли.войти в функцию mongodb, но не из нее ..

, и это также возвращает

TypeError: callback is not a function

Заранее спасибо

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