Prima di tutto, non hai bisogno dell'original
oggetto affatto. Puoi accedervi nel pre
agganciare tramite this
. In secondo luogo post
hook viene eseguito solo dopo tutto pre
gli hook vengono eseguiti, quindi il tuo codice non ha alcun senso (controlla i documenti di mongoose
).
Puoi eseguire il controllo selezionando isModified
nel tuo pre
aggancia e rimuovi il post
agganciare affatto.
OrderSchema.pre('save', function(next) {
if(!this.isModified()){
//not modified
}
next();
});
Aggiorna
Per verificare se qualche proprietà è stata modificata, passa il nome della proprietà come parametro a isModified
funzione:
if (this.isModified("some-property")) {
// do something
}