Я создал приложение реагирования с помощью приложения create-реагировать.Затем я решил, что мне нужно отредактировать / обновить код сервисного работника в соответствии с моими потребностями.
Я пытаюсь создать приложение сейчас, используя sw-precache (так как он должен помочь в создании пользовательского сервисного работника и автоматически ссылаться на него).в хэшированные статические файлы).
Это конфигурация, которую я использую в 'sw-precache-config.js' -
module.exports = {
staticFileGlobs: [
'build/static/css/**.css',
'build/static/js/**.js',
'index.html',
'/'
],
swFilePath: './build/serviceWorker.js',
templateFilePath: './service-worker.tmpl',
stripPrefix: 'build/',
handleFetch: false,
runtimeCaching: [{
urlPattern: /this\\.is\\.a\\.regex/,
handler: 'networkFirst'
}]
}
Это команда сборки в моем package.json-
"build": "react-scripts build && sw-precache --config=sw-precache-config.js",
Однако после сборки возникают две проблемы -
Несмотря на то, что в файле конфигурации я упомянул, что имя работника службы должно быть 'serviceWorker.js ', процесс сборки генерирует два файла сервисных работников -
serviceWorker.js и service-worker.js
В сгенерированном serviceWorker.js (сборкапо сценарию сборки) файл «index.html» не упоминается в предварительном кэше (поэтому работник службы не кэширует index.html, как предполагалось) -
var precacheConfig =<br>
[["static/css/main.d35a7300.chunk.css","5cf96316c6919194ba6eb48522a076f0"],["static/js/1.6105a37c.chunk.js","ae3537cefdcf8ee5758c3af13aab4568"],["static/js/main.4857c4da.chunk.js","9d6cc8fb962129f3e8bc459c85d39297"],["static/js/runtime~main.229c360f.js","3b44b5daad3fcbefa8b355dfbc3d9630"]];
Пожалуйста, дайте мне знать, если я могу уточнить что-нибудье.