簡體   English   中英

如何修復“nodemon app crashed”錯誤消息?

[英]How do I fix a "nodemon app crashed" error message?

我剛剛完成了Full Stack React Projects, Second Edition這本書的第 2 章。

當我輸入終端yarn development來檢查我的代碼時,我收到以下錯誤消息:

yarn run v1.22.15
warning package.json: License should be a valid SPDX license expression
$ nodemon
[nodemon] 2.0.2
[nodemon] to restart at any time, enter `rs`
[nodemon] watching dir(s): server/**/*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `webpack --mode=development --config webpack.config.server.js && node ./dist/server.generated.js`
Hash: 7630758f261bc6024be1
Version: webpack 4.42.1
Time: 475ms
Built at: 10/06/2021 2:48:53 PM
              Asset      Size  Chunks             Chunk Names
server.generated.js  19.4 KiB    main  [emitted]  main
Entrypoint main = server.generated.js
[0] multi ./server/server.js 28 bytes {main} [built]
[./node_modules/webpack/buildin/harmony-module.js] (webpack)/buildin/harmony-module.js 573 bytes {main} [built]
[./node_modules/webpack/buildin/module.js] (webpack)/buildin/module.js 497 bytes {main} [built]
[./server/devBundle.js] 1.6 KiB {main} [built]
[./server/server.js] 2.19 KiB {main} [built]
[./template.js] 1.15 KiB {main} [built]
[./webpack.config.client.js] 1.8 KiB {main} [built]
[express] external "express" 42 bytes {main} [built]
[mongodb] external "mongodb" 42 bytes {main} [built]
[path] external "path" 42 bytes {main} [built]
[webpack] external "webpack" 42 bytes {main} [built]
[webpack-dev-middleware] external "webpack-dev-middleware" 42 bytes {main} [built]
[webpack-hot-middleware] external "webpack-hot-middleware" 42 bytes {main} [built]
webpack:///./server/server.js?:23
app.use('/dist', express__WEBPACK_IMPORTED_MODULE_0___default.a.static(path__WEBPACK_IMPORTED_MODULE_2___default.a.join(CURRENT_WORKING_DIR, 'dist')));
^

ReferenceError: Cannot access 'app' before initialization
    at Module.eval (webpack:///./server/server.js?:23:1)
    at eval (webpack:///./server/server.js?:65:30)
    at Module../server/server.js (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:132:1)
    at __webpack_require__ (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:21:30)
    at eval (webpack:///multi_./server/server.js?:1:18)
    at Object.0 (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:166:1)
    at __webpack_require__ (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:21:30)
    at /Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:85:18
    at Object.<anonymous> (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:88:10)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
[nodemon] app crashed - waiting for file changes before starting...

我嘗試了以下解決方案:

  1. https://stackoverflow.com/a/54450694/14537132
  2. https://stackoverflow.com/a/63298885/14537132
  3. 刪除 nodemone.json 並重新創建文件
  4. 刪除節點模塊文件並重新安裝

我該如何解決?

刪除節點模塊文件不會解決您的問題,因為根據錯誤日志的問題與您的應用程序中使用的任何包無關。 如錯誤日志中所示,您的應用程序問題很可能源於您的 server.js 文件

ReferenceError: Cannot access 'app' before initialization
at Module.eval (webpack:///./server/server.js?:23:1)
at eval (webpack:///./server/server.js?:65:30)
at Module../server/server.js (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:132:1)
at __webpack_require__ (/Users/brittanysoozinsoozin/Library/Mobile Documents/com~apple~CloudDocs/Desktop/Desktop/TMDP/Molo9/Dev/Full Stack React/Ch2/MyCode/dist/server.generated.js:21:30)
at eval (webpack:///multi_./server/server.js?:1:18)

我能看到的是,當 nodejs 嘗試訪問您在第 23 行server.js文件中聲明的應用程序的static 文件時發生崩潰。

在第 23 行使用它之前,您沒有初始化app變量。您需要執行如下操作:

const app = require('./app'); // this will import your app.js file that is in your root folder assuming you are using that type of setup.

另外,檢查“ dist ”文件路徑是否正確。

暫無
暫無

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

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