Først og fremmest behøver du ikke den originale
objekt overhovedet. Du kan få adgang til det i pre
hook via denne
. For det andet post
hook udføres kun efter alle pre
hooks udføres, så din kode giver overhovedet ingen mening (tjek mongoose-dokumenter
).
Du kan foretage kontrollen ved at markere isModified
i din præ
hægt og fjern post
krog overhovedet.
OrderSchema.pre('save', function(next) {
if(!this.isModified()){
//not modified
}
next();
});
Opdater
For at kontrollere, om en egenskab er blevet ændret, skal du videregive ejendomsnavnet som en parameter til isModified
funktion:
if (this.isModified("some-property")) {
// do something
}