是否为mongoose架构预删除未触发的事件?

是否为mongoose架构预删除未触发的事件?,mongoose,mongoose-schema,Mongoose,Mongoose Schema,这不是开火!不知道为什么,我非常感谢你的帮助 Booking.find({_id: key}).remove(function(err, result){ if (err) { console.err("ERR", err) } else { console.log("remove result", result); } }) BookingSchema.pre('remove', function (next) { console.log("THIS

这不是开火!不知道为什么,我非常感谢你的帮助

 Booking.find({_id: key}).remove(function(err, result){
   if (err) { console.err("ERR", err) }
   else {
     console.log("remove result", result);
   }
 })


 BookingSchema.pre('remove', function (next) {
   console.log("THIS ID", this._id);
   next();
 });
根据

remove()
没有查询钩子,仅用于文档。如果您设置了一个
'remove'
钩子,它将在您调用
myDoc.remove()
时被激发,而不是在您调用
MyModel.remove()
时被激发

那么你可以用这个

Booking.find({_id: key}, function(err, books){
    if (err)
       throw err;
    else {
       books.forEach(function(book){
           book.remove(function(err){
              // the 'remove' pre events are emitted before this book is removed.
           });
       })
    }
});

你可以从这个

中获得更多信息,我以为这就是我使用上述代码所做的。我查询它,然后删除结果。这和'booking.findone(blah,function(err,book){book.remove()})不同吗?