簡體   English   中英

僅返回單個 Object 而不是 NEXT.JS 和 MongoDB 中的數組

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM