Невозможно прочитать свойство total всего неопределенного - PullRequest
0 голосов
/ 03 июня 2019

Если у меня нет данных за текущий месяц, я получаю следующую ошибку

Невозможно прочитать свойство 'total' из неопределенного "

Материал, который я пробовал

$group: { _id: null,
        total: { $sum:{ $cond : [ {$eq : [ "$cost", undefined ]} , 0,'$cost'] }}
        }

ниже мой текущий код

var currentDate = new Date(); 
var currMonth = currentDate.getMonth()+1;    
Spending.aggregate([
    { $project: { month: { $month: '$date' }, cost: true } },
    { $match: { month: currMonth } },
    { $group: {
        _id: null,
        total: { $sum: '$cost'}
        }
    }
]).exec().then(result => {
    console.log(result);
    res.status(200).render('index', { total: result });
})
.catch(err => {
    console.log(err);
    res.status(500).json(err);
});

Например, если у меня есть 1 запись в моей базе данных

{
дата: 2019-05-10,
стоимость: 10
}

В этом случае, если currMonth равен 05 , итоговое значение равно 10

Теперь, если currMonth - это что-то другое, кроме 5 , оно дает ошибку выше

, тогда как ожидаемый результат был 0

...