这个解决方案是否正确?我可以只使用一个try catch来完成这个任务吗?或者它必须是try catch嵌套在try catch中,我正在使用mongodb的express和mongoose。
try {
const savedRoom = await newRoom.save()
try {
await Hotel.findByIdAndUpdate(hotelId, {$push : {rooms: savedRoom._id}})
} catch (err) {
next(err)
}
res.status(200).json(savedRoom);
} catch (err) {
next(err)
}
我想寻求最佳解决方案。
1条答案
按热度按时间q1qsirdb1#
假设
next(err)
没有退出程序,如果await Hotel.findByIdAndUpdate(hotelId, {$push : {rooms: savedRoom._id}})
行抛出异常,res.status(200).json(savedRoom);
将被执行。如果你不想这样,一个独特的try catch会更好。