我第一次嘗試將一個 MERN 堆疊應用程式推送到 Heroku。當我在本地機器上運行生產構建時,Express 成功地為 React 應用程式提供服務。如果您有任何建議,請告訴我。
根據 Heroku Node.js 疑難解答,我...
package.json 中指定的 node 和 npm 版本
"type": "module",
"version": "1.0.0",
"engines": {
"node": "16.x",
"npm": "8.x"
},
指定構建包。
$ heroku buildpacks
=== my-app Buildpack URL
heroku/nodejs
日志的相關部分似乎是:
Creating an optimized production build...
Failed to compile.
Module not found: Error: Can't resolve './views/Home' in '/tmp/build_b656807b/frontend/src'
-----> Build failed
We're sorry this build is failing! You can troubleshoot common issues here:
https://devcenter.heroku.com/articles/troubleshooting-node-deploys
If you're stuck, please submit a ticket so we can help:
https://help.heroku.com/
Love,
Heroku
! Push rejected, failed to compile Node.js app.
! Push failed
這是 package.json 中的腳本
"scripts": {
"client": "npm start --prefix frontend",
"start": "node backend/server",
"server": "nodemon backend/server",
"dev": "concurrently \"npm run server\" \"npm run client\"",
"heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix frontend && npm run build --prefix frontend"
}
uj5u.com熱心網友回復:
這是通過...解決的
洗掉
Home組件并使用不同的名稱重新創建它。PORT從 中洗掉變數.env。將 Express 偵聽器設定為默認查找 Heroku 埠,并故障轉移到開發埠。
const PORT = process.env.PORT || 6060
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/395894.html
