在Heroku上部署MERN会导致无法预料的错误

时间:2018-05-14 02:47:28

标签: node.js reactjs heroku webpack mlab

我有一个MERN堆栈项目 - 它基于NodeJS(Express),ReactJS和使用mLab for DB,webpack用于资源维护。

一开始,我只是使用ReactJS,过了一段时间我为api添加了后端。

当我只使用ReactJS时,在heroku上部署非常成功。但是,当我混合NodeJS& ReactJS& Webpack& mLab,在heroku上部署有时成功并且大部分时间都失败了。

所以我需要多次部署。

我怎么了?

1 个答案:

答案 0 :(得分:1)

首先,您是否在外部package.json中设置了脚本?我看起来像这样

  "engines": {
    "node": "9.9.0",
    "yarn": "1.5.1"
 },
 "dependencies": {
    "bcrypt": "^2.0.1",
    "body-parser": "^1.18.2",
    "cors": "^2.8.4",
    "dotenv": "^5.0.1",
    "express": "^4.16.3",
    "express-jwt": "^5.3.1",
    "helmet": "^3.12.0",
    "jsonwebtoken": "^8.2.1",
    "mongodb": "^3.0.7",
    "mongoose": "^5.0.17",
    "passport": "^0.4.0",
    "passport-facebook": "^2.1.1",
    "passport-google-oauth": "^1.0.0",
    "passport-local": "^1.0.0"
  },
   "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node backend-card-game/server.js",
        "heroku-postbuild": "cd card-game && yarn install && yarn build"
    },
...

其次,你的后端指向正确的数据库网址吗?在终端类型

heroku config:get MONGODB_URI

确保你的后端指向该网址,否则如果这些都没有帮助,那么我需要看到错误信息。