我有两个完全相同的文件夹配置的Node / Express应用程序。两者都有一个前端文件夹/html
-其中包含一个create-react-app应用程序。
要将每个应用程序部署到Heroku并构建React前端部分,我在package.json中使用了heroku-postbuild
钩子。
看起来像这样:
"start": "node app.js",
"heroku-postbuild": "cd html && npm install && npm run build "
问题是这仅适用于两个应用程序之一。对于其中之一,Heroku仅负责安装模块部分,它报告成功,但从未运行过构建脚本。您可以在它发回的消息中清楚地看到这一点。
当我尝试运行有问题的应用程序时,找不到运行/build/index.html
通常会生成的npm run build
;
此外,我使用了Heroku的控制台bash
命令,以导航至服务器上应位于其上且完全为空的文件夹。没有node_modules,没有构建文件夹,什么也没有。
这是无法解释的,因为这两个应用程序几乎相同,它们的package.json文件几乎相同,并且Heroku运行的脚本是相同的。
任何帮助将不胜感激。