簡體   English   中英

如何修復節點服務器錯誤 npm ERR? 代碼 ELIFECYCLE npm 錯誤! 錯誤1?

[英]How do I fix a node server error, npm ERR! code ELIFECYCLE npm ERR! errno 1?

npm 錯誤。 代碼 ELIFECYCLE npm 錯誤。 errno 1 npm ERR:node-express@1.0.0 開始: node server npm ERR。 退出狀態 1 npm ERR。 npm 錯誤。 在 node-express@1.0.0 啟動腳本中失敗。 npm 錯誤! 這可能不是 npm 的問題。 上面可能還有額外的日志記錄 output。

npm ERR:此運行的完整日志可在 npm ERR 中找到。 /Users/teevee/.npm/_logs/2020-05-30T18_42_30_526Z-debug.log

直到我不得不在我的項目中為合作伙伴和促銷添加路線之前,我沒有遇到任何問題。 我不知道如何調試此類錯誤以進行所需的更改。 可能是什么問題? 我還在學習。 這是一個鏈接: https://github.com/TanishaV842/node-express/tree/master/routes

您遇到的問題之一是您似乎在多個地方包含了路由器的代碼:

// server.js

app.use("/campsites", campsiteRouter);
app.use("/partners", partnerRouter);
app.use("/promotions", promotionRouter);

campsiteRouter.route("/campsites").all(...);
partnerRouter.route("/partners").all(...);
promotionsRouter.route("/promotions").all(...);

沒有必要這樣做,只需執行app.use("/campsites", campsiteRouter); 並擺脫server.js中的路由器代碼。


其次, routers內部的代碼在兩個方面不正確:

// these are two different routes, so create a separate
// route for `/campsites/:campsiteId`,
// additionally, you don't want to do `/campsites/:campsiteId` 
// because you specified the `/campsite` route/portion inside of 
// your `server.js` file when you did 
// `app.use("/campsites", campsiteRouter)`, so only use `/:campsiteId`

// WRONG
campsiteRouter
  .route("/campsites")
  .all(...)
  .get("/campsites/:campsiteId", ...)

// CORRECT
campsiteRouter
  .route("/:campsiteId")
  .all(...)
  .get((req, res) => {
    console.log(req.params.campsiteId);
  })
  .post(...);

這是您的固定代碼:

希望這可以幫助。

看起來您將常規router.get()router.route().get()方法參數混合在一起。

因為您使用的是router.route()方法,所以您的:

.get() .post() .delete()

call 不能傳入字符串和回調。 他們只有一個回調 function。

修理,

更改所有router.route(...).get('<path>', (req, res) => {})

類似於:

router.route(...).get((req, res) => {})

沒有路徑參數。

暫無
暫無

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

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