Следующая конечная точка срабатывает каждый раз, когда загружается мое React-приложение, оно запускается из моего компонента макета root -уровня.
Каждый раз, когда я перезагружаю или загружаю свое приложение, изменения сохраняются в моей базе данных mongodb. Тем не менее, мой пользовательский интерфейс, основанный на этих значениях, не обновляется, пока я не перезагрузлю страницу дважды.
Таким образом, я предполагаю, что то, что возвращается из этой функции, не является обновленным объектом. Ответ возвращает устаревшие данные в мой интерфейс.
User.findOne({ _id: id }, function(err, user) {
user.events.map((e, i) => {
if (e.lastActiveWeek != moment().format("W") + 1) {
console.log(
e.lastActiveWeek + " for the test " + moment().format("W")
);
e.countHistory.push(e.count);
e.lastWeekCount = e.count;
if (e.countHistory.length > 3) {
const average = Math.floor(
e.countHistory.reduce((a, b) => a + b) / e.countHistory.length
);
e.averageCount = average;
}
e.count = 0;
e.positiveExpHistory += e.positiveExp;
e.negativeExpHistory += e.negativeExp;
e.neutralExpHistory += e.neutralExp;
e.positiveExp = 0;
e.negativeExp = 0;
e.neutralExp = 0;
}
return e;
});
user.save();
});