所以我正在使用一种方法,但我警告我不要使用它,建议使用相同的方法。什么?
// Upgrade stats query
if (args.type === "stats") {
const user = await User.findById(args.id, (err, res) => {
if (err) console.log(err);
}).then(user => {
return user;
});
if ((await user.meta.statpoints) > 1) {
let query;
User.findOneAndUpdate(
{ _id: args.id },
{
$inc: {
"meta.currency.cs": 1
}
},
(err, user) => {
if (err) console.log(err);
}
).then(user => {
//console.log(user.meta.currency);
});
}
}
它给了我这个警告:
(node:1360) DeprecationWarning: collection.findAndModify is deprecated. Use findOneAndUpdate, findOneAndReplace or findOneAndDelete instead.
我的意思是这没什么大不了的,但是这样做确实很奇怪。
答案 0 :(得分:1)
useFindAndModify默认为true,因此您可以将其全局设置为false
mongoose.set('useFindAndModify', false);
或已连接
mongoose.connect(uri, { useFindAndModify: false });