I'm trying to understand how to handle errors in Mongoose and Javascript in general. If I have this function :
let update = async (userId, age) => {
const user = await userModel.findOne({ userId: userId });
if(!user) return "no user !";
user.age = age;
return await user.save();
}
How can I make it return the string "findOne failed"
or "save failed"
? I've been trying to use callbacks but I didn't succeed. The .findOne()
and .save()
methods are from Mongoose and they accept callbacks as parameters.
Some things I tried :
// in the update function
userModel.findOne({ userId: userId }, (err) => {
if(err) return "findOne failed";
});
userModel.save((err) => {
if(err) return "save failed";
});
I think I understand why It doesn't work but I don't know how to do what I explained.
May someone help me please ? Thanks a lot !