簡體   English   中英

MongooseError: Model.findOneAndUpdate() 不再接受回調

[英]MongooseError: Model.findOneAndUpdate() no longer accepts a callback

我在設置 mongoose 時遇到了問題。

我的代碼

export const getOne = (req, res) => {
    try {
        const postId = req.params.id

        PostModel.findOneAndUpdate(
            {
                _id: postId,
            },
            {
                $inc: { viewsCount: 1 },
            },
            {
                returnDocument: 'after',
            },
            (err, doc) => {
                if (err) {
                    console.log(error)
                    return res.status(500).json({ message: "cant return post" })
                }

                if (!doc) {
                    return res.status(404).json({
                        message: "post not found"
                    })
                }

                res.json(doc)
            },
        )
    } catch (error) {
        console.log(error)
        res.status(500).json({ message: "cant retunr post" })
    }
}

錯誤:

MongooseError: Model.findOneAndUpdate() 不再接受回調 Function.Model.findOneAndUpdate (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\mongoose\lib\model.js:2398:11) at getOne (file :///C:/Users/Kous/Desktop/First-Full-Stack/controllers/PostController.js:40:13) 在 Layer.handle [as handle_request] (C:\Users\Kous\Desktop\First-Full -Stack\node_modules\express\lib\router\layer.js:95:5) 在下一個 (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\route.js:144 :13) 在 Route.dispatch (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\route.js:114:3) 在 Layer.handle [as handle_request] (C: \Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\layer.js:95:5) 在 C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib \router\index.js:284:15 在參數 (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\index.js:365:14) 在參數 (C:\ Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\index.js:376:14) 在 Function.process_params (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\表達\lib\router\index.js:421:3)

export const getOne = async (req, res) => {
  try {
    const postId = req.params.id;

  PostModel.findOneAndUpdate(
  {
    _id: postId,
  },
  {
    $inc: { viewsCount: 1 },
  },
  {
    returnDocument: "after",
  }
).then((doc, err) => {
  if (err) {
    console.log(err);
    return res.status(500).json({
      message: "Failed to return the post",
    });
  }
  if (!doc) {
    return res.status(404).json({
      message: "Post not found",
    });
  }
  res.json(doc);
});
} catch (err) {
console.log(err);
res.status(500).json({
  message: "Error",
  });
 }
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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