【问题标题】:package.json scripts failing on herokupackage.json 脚本在 heroku 上失败
【发布时间】: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


【解决方案1】:

我让它工作了。忘记了 create-react-app 也初始化了一个 git repo ......?无论是那个还是在路上的某个地方,我都做了一个额外的 git init。无论如何,我的客户端文件夹中有一个 .git 文件夹,这阻止了我的客户端文件夹被向上推。我最终创建了一个新的存储库并将所有内容推送到该存储库,现在它可以工作了。所以万一有人来这里遇到类似的问题……确保你没有陷入某种 gitception 陷阱。 :/

【讨论】:

    猜你喜欢
    • 2021-03-05
    • 2019-09-02
    • 2016-08-15
    • 1970-01-01
    • 2019-09-10
    • 2018-07-09
    • 1970-01-01
    • 2016-12-08
    • 2013-07-20
    相关资源
    最近更新 更多