En primer lugar, no necesita el original
objeto en absoluto. Puedes acceder a él en el pre
gancho a través de this
. En segundo lugar post
gancho se ejecuta solo después de todo pre
los ganchos se ejecutan, por lo que su código no tiene ningún sentido (consulte los documentos de mongoose
).
Puede hacer la verificación marcando isModified
en tu pre
enganche y elimine la post
gancho en absoluto.
OrderSchema.pre('save', function(next) {
if(!this.isModified()){
//not modified
}
next();
});
Actualizar
Para verificar si se modificó alguna propiedad, pase el nombre de la propiedad como parámetro a isModified
función:
if (this.isModified("some-property")) {
// do something
}