繁体   English   中英

聚合范围错误:超出最大调用堆栈大小(Node.js,猫鼬)

[英]Aggregation RangeError: Maximum call stack size exceeded (Node.js, Mongoose)

我在用猫鼬进行聚合时遇到问题,但是扩孔所有查询都可以正常工作。

service.js文件:

service.getAllDeviceRecentLatLng = async (req,res) =>{
    try{
        let condition = [
                            {
                                $match:{clientId: utility.removeQuotationMarks(req.query.clientId)}
                            },
                           {
                             $project:
                              {
                                 deviceId:1,
                                 recent: { $arrayElemAt: [ "$history", -1 ] }
                              }
                           }
                        ];
    const deviceTrackingHistory = await DeviceTrackingHistory.getAggregation(condition);
        logger.info('sending all DeviceTrackingHistory...');
        res.send({success:true, code:200, msg:"sending all DeviceTrackingRecentLatLng", data:deviceTrackingHistory});
    }catch(err){
        logger.error('Error in getting DeviceTrackingHistory- ' + err);
        res.send({success:false, code:500, msg:"sending all DeviceTrackingRecentLatLng Faild", err:err});
    }
}

model.js文件:

DeviceTrackerHistoryModel.getAggregation = (query) => {
    return DeviceTrackerHistoryModel.aggregation(query);
}

哦! 我在我的mode.js文件中的查询声明中做错了, 聚合而不是聚合。

DeviceTrackerHistoryModel.getAggregation = (query) => {
    return DeviceTrackerHistoryModel.aggregate(query);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM