Работа со следующей версией MongoDB (package.json
content):
"mongodb": "^3.0.2"
И у меня есть следующий код:
const addValue = 10;
await db.db('dbname').collection('collname').updateOne({
bar: bar
}, {
$set: {
foo: foo
}
}
);
Я хочу установить для переменной foo значениестарое значение foo + переменная addValue.Примерно так в псевдокоде:
$set: {
foo: foo + addValue
}
При реализации этого кода я получаю следующее: referenceError:
C:\Users\wille\Desktop\Projects\nv\server\XXX_playground.js:28
foo: foo + addValue
^
**ReferenceError**: foo is not defined
at Timeout.test [as _onTimeout] (C:\Users\wille\Desktop\Projects\nv\server\XXX_playground.js:28:26)
at ontimeout (timers.js:424:11)
at tryOnTimeout (timers.js:288:5)
at listOnTimeout (timers.js:251:5)
at Timer.processTimers (timers.js:211:10) PS C:\Users\wille\Desktop\Projects\nv\server>
Я просто сначала мог бы запросить переменную foo с помощью findOne
сохраните его в переменной, а затем используйте его в updateOne
.Однако это приведет к двум запросам и будет немного неоптимальным.
Вопрос:
Есть ли способ сделать это в одном запросе?