Я делаю запрос на mongoDB, и я хотел бы увеличивать переменную для каждого объекта, который я нашел в моей базе данных.Как сохранить данные после извлечения мангуста?
Моя проблема заключается в том, что моя переменная TotalSize, кажется, не сохраняются данные, которые он получает, я не знаю, почему:/
Я полагал, что это была проблема закрытия в JS, но кто-то сказал мне, чтобы увидеть, если это не асинхронный признак объекта запроса, который вызывает мою проблему.
Я потерял:/
var totalSize = 0;
for (var i = json[0].game.length - 1; i >= 0; i--) {
//When I found a game, I would like to increment his size in totalSize
Game.findOne({
'steamID': json[0].game[i].appID[0]
}, function (err, game) {
if (err) return handleError(err);
if (game) {
//everything is fine here totalSize is the right number
totalSize += game.size;
}
})// where he "forget" my var
//totalSize is still at 0 like I never incremented the variable
console.log(totalSize);
}
res.render('user', {
steamid: steamID,
steamid64: steamID64,
size: totalSize,
content: json
});
Нету Мне нужен totalSize вне функции findOne и обновляется с помощью game.size. Вы только перенесли его внутрь, и это не то, что я хочу. – hyptos
@hyptos см. Отредактированный ответ – karaxuna
см. Мое редактирование Мне просто нужно обновить totalSize для моего res.render. Я не знаю, видите ли вы, что я пытаюсь сделать:/кстати спасибо за ваше время :) – hyptos