это ключевое слово внутри метода крючка мангусты - PullRequest
0 голосов
/ 10 марта 2019
import mongoose from 'mongoose';

const userSchema = new mongoose.Schema({
    username: {
        type: String,
        unique: true
    }
});

userSchema.statics.findByLogin = async function(login) {
    let user = await this.findOne({
        username: login,
    })

    if(!user) {
        user = await this.findOne({ email: login });
    }

    return user;
};

// what does this keyword refers to
userSchema.pre('remove', function(next) {
    this.model('Message').deleteMany({ user: this._id }, next);
});

const User = mongoose.model('User', userSchema);

export default User;

Я просто пишу метод ловушки на userSchema, когда пользователь удаляется, который удаляет сообщения, написанные этим пользователем.Мой вопрос this.model('Message').deleteMany({ user: this._id }, next);, к чему это относится в данном случае.Я думаю, что первое относится к мангусте, а второе - к пользователю, который в данный момент удален, но относится ли это к разным вещам в этом утверждении?

...