Tout d'abord, vous n'avez pas besoin de l'original objet du tout. Vous pouvez y accéder dans le pre crochet via this . Deuxièmement, post hook ne s'exécute qu'après tous les pre les crochets sont exécutés, donc votre code n'a aucun sens (vérifiez la documentation de mongoose
).
Vous pouvez faire la vérification en cochant isModified
dans votre pre accrocher et retirer le post crochet du tout.
OrderSchema.pre('save', function(next) {
if(!this.isModified()){
//not modified
}
next();
});
Mettre à jour
Afin de vérifier si une propriété a été modifiée, passez le nom de la propriété en tant que paramètre à isModified fonction :
if (this.isModified("some-property")) {
// do something
}