Значение приращения мангуста не работает

avatar
yong ho
8 апреля 2018 в 02:34
251
2
0

Я пытаюсь увеличить значение и присвоить его обратно ключу.

const TopicSchema = mongoose.Schema({
    count: Number
});

topic.count += 2

Вместо 4 возвращено 22. Если я делаю это пару раз, в конец всегда добавляется 2, например 2222.

Что случилось?

Источник
Ashh
8 апреля 2018 в 05:34
0

Это происходит потому, что вы добавляете две строки... проверьте typeof числа 2

Ответы (2)

avatar
l008com
8 апреля 2018 в 02:47
2

Похоже, вы объединяете строки вместо добавления чисел. Попробуйте обернуть topic.count в Number( )

avatar
Muhammad Usman
8 апреля 2018 в 12:34
1

Если вы пытаетесь обновить документ, вам лучше использовать оператор $inc, предоставленный mongodb. Подробнее об этом читайте здесь.

Кстати, вот как это можно сделать одним запросом

db.topic.update(
{ }, //your filter here
{ $inc: { count: 2} }
 )