我尝试做的是在条件为真时更新并推入两个不同的字段,而在条件为假时只更新一个字段。
const updateQuery = historicEnable == true ? ({ $push: { locationHistoric: locationObject } }, {currentLocation: locationObject}) : ({ currentLocation: locationObject })
const theLocation = await User.findOneAndUpdate({ phone }, updateQuery, {
new: true,
});
到目前为止,当条件为true时,它只推入locationHistoric,而不更新currentLocation。
如何使这两种方法在相同的条件下工作?
1条答案
按热度按时间pbwdgjma1#
试试看:
第二条语句中也缺少运算符。请使用任何运算符,如$set或$push