Работник службы доступа. js В разработке - PullRequest
0 голосов
/ 19 февраля 2020

Я заменил .unregister() на .register() в index.tsx моего CRA с проектом Typescript.

Вот код register():

export function register(config?: Config) {
  if (process.env.NODE_ENV === 'development' && 'serviceWorker' in navigator) {
    const publicUrl = new URL(
      process.env.PUBLIC_URL,
      window.location.href
    );
    if (publicUrl.origin !== window.location.origin) {
      return;
    }
    window.addEventListener('install', () => console.log("Yup, installed"))
    window.addEventListener('load', () => {
      console.log("On load")
      const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;

      if (isLocalhost) {
        registerValidSW(swUrl, config);
       // checkValidServiceWorker(swUrl, config);

, но этот код не удается зарегистрировать работника службы, поскольку в папке publi c нет такого файла, как service-woker.js. Я пробовал:

const swUrl = `${process.env.PUBLIC_URL}/serviceWorker.js`;
const swUrl = `service-worker.js`;
const swUrl = `./service-worker.js`;
const swUrl = `serviceWorker.js`;
const swUrl = `./serviceWorker.js`;

большинство, если не все перестановки, и все еще не смог разрешить перенесенную версию serviceWorker.ts

Вопросы

  1. Как разрешить файл service-worker.js или чем его можно заменить для разрешения.
  2. При сборке проекта * 1029 Файл * в папке сборки выглядит совсем не так, как serviceWorker.ts, из которого, я бы предположил, он получен. Весь код в serviceWorker.ts отсутствует в service-worker.js. Почему?
...