Javascript 将Mongoose聚合函数返回给Angular

Javascript 将Mongoose聚合函数返回给Angular,javascript,angularjs,node.js,mongodb,mongoose,Javascript,Angularjs,Node.js,Mongodb,Mongoose,我试图找出如何将聚合函数返回到Angular,但我不断地得到错误。我真的被困在这个问题上了,如果能帮我解决我做错的事情,我将不胜感激。我收到一个错误,告诉我无法读取未定义的属性“聚合”。 这是角度传感器连接到的路线: router.get('/enrolledin', function(req, res) { var isEnrolled = Enrolled.findDetails(); //Enrolled.studentIsTaking(student); isEnr

我试图找出如何将聚合函数返回到Angular,但我不断地得到错误。我真的被困在这个问题上了,如果能帮我解决我做错的事情,我将不胜感激。我收到一个错误,告诉我无法读取未定义的属性“聚合”。
这是角度传感器连接到的路线:

router.get('/enrolledin', function(req, res) {
    var isEnrolled = Enrolled.findDetails(); //Enrolled.studentIsTaking(student);
       isEnrolled.then((user) => {
        res.json(user);
    })
        .catch((err) => {
        res.send("error found");
    });


});
这是已注册的.findDetails():

我相信(滚动到示例)期望的是数组而不是对象

旁白:我不知道为什么人们喜欢用猫鼬来捕捉猫鼬。依我看,这似乎是不必要的,而且会使代码变长

我只需将其改写为您的代码,如下所示:

router.get('/enrolledin', (req, res) => {
    Enrolled.findDetails((err, users) => {
        if (err)
            return res.send('error found', err);
        res.json(users);
    });
});

module.exports.findDetails = (callback) => {
    db.enrolleds.aggregate([
        { 
            $lookup: {
                from: 'classstores',
                localField: 'classID',
                foreignField: 'classKey',
                as: 'matching'
            }
        }
    ], callback);
};
router.get('/enrolledin', (req, res) => {
    Enrolled.findDetails((err, users) => {
        if (err)
            return res.send('error found', err);
        res.json(users);
    });
});

module.exports.findDetails = (callback) => {
    db.enrolleds.aggregate([
        { 
            $lookup: {
                from: 'classstores',
                localField: 'classID',
                foreignField: 'classKey',
                as: 'matching'
            }
        }
    ], callback);
};