关于扩展Mongoose模型和模型实例的技术

时间:2016-04-04 10:49:05

标签: node.js mongodb oop mongoose ecmascript-6

很抱歉新手问题,但是现在我正在做的事情是这样的:

var newUser = new User();
global.models.User = mongoose.model('User', User.schema);

在我的User类中,我有一个方法对象,具有模型的功能。因此,我正在做的是将方法从类“转移”到模型(在上面加载之后),循环遍历用户并添加方法。像这样:

for (let method of Object.getOwnPropertyNames(Object.getPrototypeOf(newUser))) {
    if (method == 'constructor')
        continue;
    let method = newUser[method];
    global.models.User[method] = method;
}

现在这个有效,但我觉得这是一个完全错误的做法。我基本上想要扩展并将类方法添加到模型中。

此外,是否可以向类的每个实例添加方法?例如,像userInstance.logOut()

这样的方法

抱歉新手问题,我觉得我做得不对。

谢谢!

0 个答案:

没有答案