chekc fild 在 mongoose 和 nodejs 中是否被修改

问题描述

我有这个架构来创建一个用户在这个架构中我想检查一些属性是否被修改

我有这样的代码

import mongoose from 'mongoose';
import uniqueString from 'unique-string';
import { BaseSchema } from './BaseSchema';

enum Gender {
    Male = 1,Female = 2,Trans = 3
}

interface UserAttrs {
    firstName: string;
    lastName: string;
    phoneNumber: string;
    password: string;
}

export interface UserDoc extends mongoose.Document {
    firstName: string;
    lastName: string;
    phoneNumber: string;
    password: string;
}

interface usermodel extends mongoose.Model<UserDoc> {
    build(userAttrs: UserAttrs): UserDoc;
}

const UserSchema = new mongoose.Schema({
    firstName: {
        type: String,required: true
    },lastName: {
        type: String,phoneNumber: {
        type: String,password: {
        type: String,required: true
    }
})


UserSchema.pre('updateOne',function () {
    this.set({ securityStamp: uniqueString() });
});


UserSchema.statics.build = (attrs: UserAttrs) => {
    return new usermodel(attrs);
}


const usermodel = mongoose.model<UserDoc,usermodel>("User",UserSchema);

export { usermodel }

我想检查字段是否被修改,这样它对我不起作用:

UserSchema.getUpdate().$set.password

但它向我展示了这个错误

getUpdate 不是函数

有什么问题吗?我该如何解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)