«Маршруты» PWA не определены

При попытке создать очень простое PWA с ядром ASP.NET, похоже, не так уж много примеров использования .NET 8.0.

Шаги следующие:

  • Создано новое основное приложение ASP.NET. Использование .NET 8.0.
  • Установлен пакет dotnet WebEssentials.AspNetCore.PWA.
  • Добавил файл манифеста.
  • В папку изображений добавлены два значка.
  • Добавлено builder.Services.AddProgressiveWebApp();

Приложение запускается, и я получаю возможность установить его из Chrome, и это здорово. Однако сервис-работник недоволен и выдает следующую ошибку:

Неперехваченный (в обещании) ReferenceError: маршруты не определены у сервисника: 11:42

При нажатии на ошибку выделяется следующий код сервисного работника:

 // Store core files in a cache (including a page to display when offline)
  function updateStaticCache() {
    return caches.open(version).then(function (cache) {
      return cache.addAll([offlineUrl, { routes }]);  // This line is highlighted.
    });
  }

По сути, я использовал это руководство, но с .net 8.0: https://www.c-sharpcorner.com/article/progressive-web-app-pwa-in-asp-net-core/

Может ли кто-нибудь подсказать мне, что не так с сервисным работником и почему маршруты не определены?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
153
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Для меня ответом была загрузка файла манифеста вручную:

программа.cs:

// Register as a PWA application
builder.Services.AddProgressiveWebApp(new PwaOptions
{
    RegisterServiceWorker = true,
    RegisterWebmanifest = false,  // (Manually register in Layout file)
    Strategy = ServiceWorkerStrategy.NetworkFirst,
    OfflineRoute = "Offline.html"
});

макет:

@*Manually register the PWA Manifest*@
<link rel = "manifest" href = "~/manifest.json" />

Но манифест — это не тот файл, в котором ошибка, верно? это serviceworker.js. Как загрузка манифеста вручную исправляет ошибку «маршрут» не определен?

Svenmarim 14.06.2024 13:19

@Svenmarim Извините, понятия не имею, просто когда я внес изменения, все, казалось, сработало. Возможно, я нечаянно изменил что-то еще?

Reafidy 18.06.2024 04:34

Другие вопросы по теме