[英]Return just single Object instead of Array in NEXT.JS and MongoDB
我如何返回单个 object 而不是数组? 因为我在 api 中询问只是为了单个“事件”我使用 MongoDB + Next.js
我总是得到
[{}]
我只是想让它得到
{}
const fetchWithId = (url: RequestInfo) => fetch(url).then((r) => r.json());
const index = () => {
const router = useRouter();
const { data, error } = useSWR(
`http://localhost:3000/api/events/event?slug=${router.query.slug}`,
fetchWithId
);
这是下一个 API
const handler = async (req: NextApiRequest, res: NextApiResponse) => {
const {
method,
query: { slug},
} = req;
if (req.method !== 'GET') {
return;
}
await dbConnect();
const selectedEvent = await Events.find({
slug: slug,
});
res.status(200).json(selectedEvent);
};
export default handler;
您可能希望调用方法.findOne() 而不是 .find() :
const selectedEvent = await Events.findOne({
slug: slug
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.