【发布时间】:2019-07-10 10:14:01
【问题描述】:
所以我有一系列脚本设置为用于 React/Node Express 应用程序的开发服务器或 heroku 上的生产服务器。该应用程序的结构如下:
client/package.json //react 应用的 pckg package.json //节点服务器的pckg
这些是客户端包中的脚本:
"scripts": {
"start": "if-env NODE_ENV=production && npm run start:prod || npm run start:dev",
"start:prod": "node server.js",
"start:dev": "set NODE_ENV=development&& concurrently \"nodemon --ignore 'client/*'\" \"npm run client\"",
"client": "cd client && npm run start",
"seed": "node scripts/seedDB.js",
"install": "cd client && npm install",
"build": "cd client && npm run build",
"heroku-postbuild": "npm run build"
}
react apps package.json 与 create-react-app 自动生成的唯一区别如下:
"proxy": "http://localhost:3001/",
它应该运行的方式是,在根文件夹中安装脚本,运行安装脚本以 cd 进入客户端并安装 react 应用程序依赖项,然后 heroku 的构建后脚本应该开始运行构建脚本,该脚本 cds 进入客户端并构建一个生产就绪的反应应用程序。最后,启动脚本应该看到生产的 NODE_ENV 并运行 start:prod。
我的问题是,由于某种原因,当我推送到 heroku 时,它似乎卡在了安装脚本的无限循环中。我不知道为什么,因为完全相同的脚本可以完美地用于其他项目。
https://github.com/LordKriegan/reactdbdemo
https://github.com/LordKriegan/reactdbdemo2/ 如果有人想看的话。 (为我的学生做一个完整的堆栈演示:/如果我无法部署它,那么演示就不算多)
【问题讨论】:
-
“它似乎卡在了安装脚本的无限循环中”——是什么让你这么想?请分享您看到的任何错误消息或相关的构建输出。我们无法解决我们看不到的问题。
-
这是我在终端中看到的。当我做一个 git push heroku master 它只是不断重复
remote: > reactdbdemo@1.0.0 install /tmp/build_ffe14cc6afb6dfc4abb1d2091cc50c74 remote: > cd client && npm install remote:
标签: node.js reactjs heroku scripting