0

我在 MERN 堆栈中使用 MongoDB、Express、React、Nodejs 构建了 WebApp。

我将它作为https://connectgeeks.herokuapp.com托管到 Heroku-Cloud 。

项目的Github-repo - Find_Geeks。它适用于我的桌面浏览器,但不能在任何 Android chrome 上运行。

我在 Heroku 云中有一个自动构建应用程序,其中 package.json 中的命令为

"scripts:{ "heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix frontend && npm run build --prefix frontend" } 当它在 android 上加载时,它的搜索栏背景变为黑色,我假设页面已加载,但无法显示组件。

Desktop-chrome的屏幕截图,处于工作状态。

截图1

Desktop-chrome 的屏幕截图,在隐身模式下,工作状态。

截图2

chrome中Mobile-mode的截图,工作状态。

截图3

我的package.json内容是

{
  "name": "find-geeks",
  "version": "1.0.0",
  "description": "social media for developers, quite same as Linkedin.",
  "main": "server.js",
  "scripts": {
    "client-install": "npm install --prefix frontend",
    "start": "node server.js",
    "server": "nodemon server.js",
    "client": "npm start --prefix frontend",
    "dev": "concurrently \"npm run server\" \"npm run client  \"",
    "heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix frontend && npm run build --prefix frontend"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/ganesh-deshmukh/connect-geeks.git"
  },
  "author": "Ganesh Ashok Deshmukh",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/ganesh-deshmukh/connect-geeks/issues"
  },
  "homepage": "https://github.com/ganesh-deshmukh/connect-geeks#readme",
  "dependencies": {
    "bcryptjs": "2.4.3",
    "body-parser": "1.18.2",
    "concurrently": "3.5.1",
    "express": "4.16.3",
    "gravatar": "1.6.0",
    "jsonwebtoken": "8.2.0",
    "mongoose": "5.4.0",
    "passport": "0.4.0",
    "passport-jwt": "4.0.0",
    "validator": "9.4.1"
  },
  "devDependencies": {
    "nodemon": "1.17.3"
  }
}

编辑1:

我尝试通过 localhost-server 在移动屏幕上调试 url http://192.168.43.171:3000/

截图5

然后它显示错误位置为,

屏幕6

屏幕7

屏幕8

从 store.js 中删除了 DevTools,现在它可以通过 localhost-server 在移动浏览器上运行。

屏幕8

也许这是由于 Heroku-build 脚本或任何其他原因。

它在删除 redux-dev-tools 后就可以在移动屏幕上运行,就像在本地一样。

但它不适用于https://connectgeeks.herokuapp.com的 URL

4

2 回答 2

0

这个问题没有任何错误,但是一旦更改完成就没有推送 Heroku master 的错误。

我检查了 Heroku 仪表板上的日志,它显示了旧日期的活动,尽管我更新并推送了 git-repo。

我的错误是在删除 redux-dev-tools 后没有推送 Heroku-repo。

解决后,在活动选项卡中,它显示新日志,表示它已更新。

屏幕1

它现在可以在移动设备上运行,通过 localhost-server 和 url 作为https://connect-geeks.herokuapp.com/

屏幕2

于 2019-05-02T06:19:00.897 回答
0

我知道这是一个老问题,但如果有人需要,我会发布答案。

问题出在您的 server.js(后端)文件中。您需要按以下顺序将中间件放入server.js中。

中间件的顺序

于 2021-03-20T10:22:22.137 回答