まず第一に、 originalは必要ありません まったくオブジェクト。 preでアクセスできます this経由でフック 。次に、 post フックはすべてのpreの後にのみ実行されます フックが実行されるため、コードはまったく意味がありません(mongooseドキュメントを確認してください
)。
isModified をチェックすることで、チェックを行うことができます。コード>
pre postをフックして削除します まったくフックします。
OrderSchema.pre('save', function(next) {
if(!this.isModified()){
//not modified
}
next();
});
更新
一部のプロパティが変更されたかどうかを確認するには、プロパティ名をパラメータとして isModifiedに渡します。 機能:
if (this.isModified("some-property")) {
// do something
}