微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决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 举报,一经查实,本站将立刻删除。