Развернутое приложение Heroku работает только на ПК, с которого я его развернул. - PullRequest
0 голосов
/ 14 мая 2019

Я закончил свое приложение стека MERN и развернул его в Heroku.Открыл его на Heroku и все заработало.Забавно то, что он не работает ни на какой другой машине, кроме той, с которой я его развернул.При открытии на любом другом компьютере он просто переходит на пустой белый экран со следующей ошибкой в ​​консоли:

redux.js:575 Uncaught TypeError: Cannot read property 'apply' of undefined
    at redux.js:575
    at u (redux.js:79)
    at Module.102 (store.js:9)
    at f ((index):1)
    at Object.57 (spinner.gif:1)
    at f ((index):1)
    at a ((index):1)
    at Array.e [as push] ((index):1)
    at main.4febefcb.chunk.js:1

Я пытаюсь выяснить, каковы возможные причины такого поведения.

Я уже пытался создать новое приложение Heroku и повторно развернуть его, перезапустить dynos и проверить мою конфигурацию server.js для портов.

//static assets for production
if (process.env.NODE_ENV === "production") {
  //set a static folder
  app.use(express.static("client/build"));
  app.get("*", (req, res) => {
    res.sendFile(path.resolve(__dirname, "client", "build", "index.html"));
  });
}

const PORT = process.env.PORT || 5000;
app.listen(PORT, () => console.log(`Server is being ran on port ${PORT}`));

Где мне искать, чтобы найти проблему?

1 Ответ

0 голосов
/ 20 мая 2019

После долгих отладок я выделил проблему в Redux dev tools.Приложение работало с любым браузером, в котором были установлены средства разработки Redux.

Я выяснил, что это как-то связано с файлом store.js , и проверил мой createStore:

 const store = createStore(
  rootReducer,
  initialState,
  compose(
    applyMiddleware(...middleware),
    window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
  )
);

После удаления следующей строки из окна создания

. Окно REDUX_DEVTOOLS_EXTENSION &&. REDUX_DEVTOOLS_EXTENSION ()

Я нажалэто Heroku и проблема была решена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...