当前位置 : 主页 > 网页制作 > Nodejs >

node.js – Mongoose – 向回调中返回的对象添加方法

来源:互联网 收集:自由互联 发布时间:2021-06-16
有没有办法将函数添加到回调中返回的对象? User.find({'age':'20'}, function(err, users){ users.function();}); 似乎静力学只适用于模型.原理图: User.static(); 和方法仅适用于实例 (new User()).method();
有没有办法将函数添加到回调中返回的对象?

User.find({'age':'20'}, function(err, users){
    users.function();
});

似乎静力学只适用于模型.原理图:

User.static();

和方法仅适用于实例

(new User()).method();

它们似乎都不适用于用户,我认为这只是一个普通的js Object变量.我错过了什么吗?

来自文档的 Schema.method描述:

Adds an instance method to documents constructed from Models compiled from this schema.

所以,如果你做这样的事情:

var userSchema = new Schema({
    username: String,
    age: Number
});

userSchema.method('showAge', function () {
    return this.age;
});

,并在从查询返回的文档中调用您的方法,如:

User.findOne({'age':'20'}, function(err, user){
    console.log(user.showAge());
});

它应该工作.也许你遇到了问题,因为你在数组中调用了方法users.function().请记住:find方法返回一个文档数组.

网友评论