Попробуйте изменить содержимое firebase.json
на:
{
"hosting": {
"public": "build",
"ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
],
"headers": [
{
"source": "/service-worker.js",
"headers": [{ "key": "Cache-Control", "value": "no-cache" }]
}
]
}
}
Ваше текущее значение firebase.json
указывает на папку "public"
, которая на самом деле не будет содержать какие-либо активы HTML / JS / CSS от запуска команды npm run build
.create-react-app
производственная сборка команда npm run build
генерирует все скомпилированные ресурсы HTML / JS / CSS в каталог "build"
:
npm run build создает каталог сборки с производственнойсборка вашего приложения.Внутри директории build / static будут ваши файлы JavaScript и CSS.Каждое имя файла внутри build / static будет содержать уникальный хэш содержимого файла.Этот хэш в имени файла включает методы долгосрочного кэширования.
Обновите конфигурацию, выполните npm run build
, а затем firebase deploy
для повторной сборки и повторного развертывания.
Этопример также включает в себя настройку , исключая файлы рабочих служб , а также правила перезаписи для целей использования маршрутизатора, такие как react-router-dom
.Вы можете удалить их, если они никак не применимы к вашему проекту.
Обновление: Также в constants.js
следует обновить импорт Firebase следующим образом, чтобы устранить предупреждение.Предполагается, что вы используете Firebase Auth и Firebase Realtime Database:
import firebase from 'firebase/app';
import 'firebase/auth';
import 'firebase/database';
Надеюсь, это поможет!