ReactJS приложение, развернутое на хостинге firebase, не обновляется после первого развертывания - PullRequest
1 голос
/ 28 мая 2020

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

Я пытался развернуть свое приложение для реагирования на net с помощью firebase, и все шло хорошо, пока я не попытался обновить его / повторно развернуть. В моем терминале отображается ✔ Deploy complete!, но я проверяю веб-сайт, он не показывает никаких обновлений. Я пробовал поместить следующий код в firebase.json:

"headers": [
      {
        "source": "/service-worker.js",
        "headers": [
          {
            "key": "Cache-Control",
            "value": "no-cache"
          }
        ]
      }
    ]

Но это ничего не изменило. Мои шаги по выпуску приложения были следующими:

npx create-react-app firebase-test
cd firebase-test
firebase login
firebase init #I only chose hosting, chose to configure as a single-page application, wrote build as my public folder
npm run build
firebase deploy

Отображается первое развертывание, но когда я пытаюсь выполнить повторное развертывание, я не вижу обновлений.

Ответы [ 2 ]

1 голос
/ 28 мая 2020

Ваш service-worker.js, вероятно, все еще кэширован, поскольку вы добавили заголовок Cache-Control после первого посещения сайта.

Это означает, что ваш браузер не пытался запросить файл снова, но обслуживает это по памяти. Даже стандартный refre sh (CTRL / CMD + R) не поможет.

Попробуйте выполнить hard refre sh (CTRL + Shift + R) или очистите кеш приложения вручную с помощью инструментов разработчика . Ваш браузер повторно загрузит service-worker.js с правильным заголовком Cache-Control, и проблема больше не возникнет.

И, как всегда, убедитесь, что вы действительно создали свое приложение перед развертыванием:)

0 голосов
/ 28 мая 2020

Если развертывание завершено и вы видите примечание об этом, но веб-сайт не обновляется, это означает, что ваш пакет приложений не изменился, убедитесь, что вы запустили npm сборку запуска перед запуском команды развертывания

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