Как настроить Workbox в приложении на основе Create-React-App?

Да fs.readdir не может этого сделать в настоящее время.

Я подал сообщение об ошибке с Node.js и выглядит так, что это может быть хорошей возможностью для добавления.

https://github.com/nodejs/node/issues/21804

0
задан johndodo 19 January 2019 в 10:03
поделиться

2 ответа

Использование локальных файлов Workbox вместо CDN Если вы не хотите использовать CDN, достаточно легко переключиться на файлы Workbox, размещенные в вашем собственном домене.

Самый простой подход - получить файлы с помощью команды copyLibraries или из GitHub Release workbox-cli, а затем указать workbox-sw, где найти эти файлы, с помощью параметра конфигурации modulePathPrefix.

Если вы поместите файлы в / third_party / workbox / , вы будете использовать их так:

importScripts('/third_party/workbox/workbox-sw.js');

workbox.setConfig({
modulePathPrefix: '/third_party/workbox/'
});

При этом вы будете использовать только локальные файлы Workbox.

передняя ссылка https://developers.google.com/web/tools/workbox/modules/workbox-sw#using_local_workbox_files_instead_of_cdn

0
ответ дан sancelot 19 January 2019 в 10:03
поделиться

Я не нашел правильного решения для этого, поэтому я использовал два механизма для достижения аналогичного эффекта:

  1. Сценарий сборки CI заменяет ссылку на Google CDN на локальный URL:
sed -i -e 's#https://storage[.]googleapis[.]com/workbox-cdn/releases/[0-9.]*/workbox-sw.js#/workbox/workbox-sw.js#g' build/service-worker.js
  1. , чтобы убедиться, что это никогда не будет обойдено, я также установил заголовки политики безопасности контента (а также метатеги, если приложение размещено где-то где заголовки не могут быть легко установлены), так что браузер знает, что мое приложение не может получить доступ к Google CDN (или что-нибудь еще на самом деле, за некоторыми исключениями, которые находятся под моим контролем).

Первая часть решения немного уродливая, и я все равно был бы заинтересован в лучшем способе, но это лучший метод, который я мог бы найти, не выбрасывая CRA.

0
ответ дан johndodo 19 January 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: