gpt4 book ai didi

javascript - 合并两个获取对象以发送响应以在 Node js 中与 mongodb 进行 react ?

转载 作者:太空宇宙 更新时间:2023-11-04 01:34:06 28 4
gpt4 key购买 nike

我是node.js的新手现在我想向客户端发送响应。我有两个集合,在一个集合中我有所有细节。在另一个集合中,我有更多详细信息,现在我想将所有这两个集合发送到集合中,我曾尝试合并两个集合,但它不起作用

我的示例代码

router.route('/backend/deptwise').post(function(req, res, next) {
const { event_name, dept } = req.body;
Reguser.find({ eventname: event_name, dept: dept }, (err, docs) => {
if (docs.length) {
var i;
for (i = 0; i < docs.length; i++){
WholeReg.find({ reg_id: docs[i].reg_id }, (err, docs1) => {
/// Logic for merging `docs1[0].teamname` with docs
});
if (docs.length - 1 == i) {
res.send(docs);
}
}
} else {
res.send('No Events Found');
}
});
});


我将非常感谢任何对此的帮助。我别无选择,我真的想合并 Node js中的两个获取对象以发送响应到react js,请帮我解决

感谢和问候,Balaji Rajendran

最佳答案

import _ from 'lodash'

router.route('/backend/deptwise').post(async (req, res, next) => {
const { event_name, dept } = req.body;
const regusers = await Reguser.find({ eventname: event_name, dept: dept })
if (regusers.length) {
const results = []
const allUser = _.map(regusers, async reguser => {
const wholeRegs = await WholeReg.findOne({ reg_id: reguser.reg_id })
const result = _.merge(reguser, wholeRegs)
results.push(result)
})
Promise.all(allUser)
res.send(results);
} else {
res.send('No Events Found');
}
});

这将解决您的问题,但我认为您应该进行聚合。它的语法简单、干净,而且效率更高。

关于javascript - 合并两个获取对象以发送响应以在 Node js 中与 mongodb 进行 react ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55095262/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com