Собрав всю предоставленную информацию, рискну на возможный ответ!
Вы можете попробовать что-то вроде:
Ваша схема JS file
const mySchema = mongoose.Schema({
position: Number,
date: Number,
lastEventDate: Number
});
mySchema.methods.doYourThing(){
this.lastEventDate=this.date; //it will set the lastEventDate
}
mongoose.model("myModel", MySchema, "mycollection")
Теперь, когда вы вызываете doYourThing()
, действие произойдет, вы вызываете его после того, как у вас есть экземпляр режима.
Это из моего собственного кода
const token = user.generateJwt(expirationDate); //send a token, it will be stored locally in the browser
внутри функции, которая возвращает экземпляр user
и в модели User
я сделал функцию с именем generateJwt
, как я показал, и у нас есть что-то вроде этого:
return jwt.sign(
{
_id: this._id, //this is created automatically by Mongo
email: this.email,
name: this.name,
exp: parseInt(expiry.getTime() / 1000, 10), //Includes exp as UNIX time in seconds
level: this.level,
lastLogin: this.lastLogin,
failedLogin: this.failedLogin
},
process.env.JWT_SECRET
); // DO NOT KEEP YOUR SECRET IN THE CODE!
Она возвращает всю информацию пользователя!
Пожалуйста, не стесняйтесь добавлять комментарии и отзывы, я не уверен, что это то, что вы хотите, но именно поэтому я понял ваш запрос.
Другой вариант использует Виртуалы, они также имеют доступ к this
.