我想将使用用户id从MongoDB数据库中获取的用户数据传递给return部分中的props。如何将回调函数中的数据docs
正确地发送到props
?
感谢您的回复。
export const getServerSideProps = async (userid) => {
await connectMongo();
console.log("db connected on profile page");
User.findOne({ id: userid }, function (err, docs) {
if (err) {
console.log(err);
} else {
console.log(docs.email);
}
});
return {
props: {
},
};
};
2条答案
按热度按时间a1o7rhls1#
我也在前端使用了MongoDB,我添加了一个片段来给予一个完整的示例。然而,简单地说,您需要将DB find请求的结果存储在一个变量中,如果您只是使用
findOne()
进行搜索或寻找一个结果我建议将find结果存储在一个变量中,并将其作为一个属性直接发送到页面。但是,如果
db.collection("submissions").find()
请求有多个结果,则需要调用JSON.parse(JSON.stringify(results))
。客户端/页面/...
客户承诺
gcuhipw92#
您可以创建一个新变量来解决该问题
通过使用
async
,还有另一个解决方案。代码如下: