(Развертывание React и Firebase) пустая страница при обновлении

Я начал изучать реакцию и firebase, чтобы сделать простое приложение с react-router-dom, все отлично работает на локальном хосте, но когда я развертываю на firebase, маршрутизация работает только в том случае, если я перемещаюсь по ссылкам, если я обновляю страницу или вручную меняю URL-адрес он возвращает белую страницу, консоль записывает:

Uncaught SyntaxError: Unexpected token <
main.13106e0c.chunk.js:1 Uncaught SyntaxError: Unexpected token <
manifest.json:1 Manifest: Line: 1, column: 1, Unexpected token.

Другое дело, что это происходит только с маршрутами, у которых есть параметры, например path = "/categories/:name", другие, такие как path = "/login/", работают нормально.

Я видел, что есть несколько сообщений о похожей ошибке, но у меня еще никто не работал.

Скорее всего, это работает локально, потому что у вас включен historyApiFallback. Вы должны убедиться, что ваш сервер обслуживает файл index.html для всех ваших рабочих маршрутов.

Tholle 09.03.2019 22:34

Если то, что говорит @Tholle, является причиной, см. firebase.google.com/docs/hosting/full-config#rewrites

Frank van Puffelen 09.03.2019 22:44

firebase спрашивает вас, хотите ли вы перенаправить все URL-адреса на /index.html, поэтому проблема не в этом.

Ultimate RA 09.03.2019 23:22

Тогда может случиться так, что ваши файлы JS не имеют / перед их именами в атрибуте тега скрипта src внутри index.html, что сделает так, чтобы файлы JS загружались относительно текущего URL-адреса, например. /login/main.13106e0c.chunk.js, а не просто main.13106e0c.chunk.js, как вы хотите.

Tholle 09.03.2019 23:50

Ты прав! это было / я бы не подумал

Ultimate RA 10.03.2019 00:14
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
4
5
832
0

Другие вопросы по теме