Angular6 ServiceWorker не кэширует все файлы - PullRequest
0 голосов
/ 25 июня 2018

Я сгенерировал чистый проект Angular6 и использую ng add @angular/pwa я получаю это ngsw-config.json:

{
    "index": "/index.html",
    "assetGroups": [
        {
            "name": "app",
            "installMode": "prefetch",
            "resources": {
                "files": [
                    "/favicon.ico",
                    "/index.html",
                    "/*.css",
                    "/*.js"
                ]
            }
        },
        {
            "name": "assets",
            "installMode": "lazy",
            "updateMode": "prefetch",
            "resources": {
                "files": [
                    "/assets/**"
                ]
            }
        }
    ]
}

Существует целая папка ресурсов, помеченная как «Кэширование работника службы», но печальная реальность показывает, что этоне реально:

enter image description here

3 графических файла, которые я использую (header-bg.jpg, list-border-red.svg & list-border-green.svg), помечены как «из ServiceWorker»Но когда я создаю приложение на своем смартфоне, отключаю интернет-соединение и открываю приложение, доступно только header-bg.jpg.но list-border-red.svg & list-border-green.svg недоступны в автономном режиме.

Также показывает рисунок, на котором 2 значка сайта загружаются из «Дискового кэша» и один из ftp ... Файлы также находятся в папке активов,почему они не кэшируются для mServiceWorker?Возможно, что-то не так с ServiceWorker в Chrome?

Приложение уже подключено к Интернету, и его можно найти здесь: https://expense -calculator.com / Просто откройте и сделайте свои собственные тесты, если вам нужноэто воспроизвести мою проблему.

1 Ответ

0 голосов
/ 02 июля 2018

Ваш код работника сервиса выглядит хорошо и отлично зарегистрирован для обслуживания файлов в автономном режиме, как вы и ожидали. Я проверил в Chrome с включенным режимом полета. Все файлы, включая файлы .svg, загруженные из кэша.

Пожалуйста, повторите попытку.

...