Angular 7 PWA-脱机模式下缺少字体超棒图标
问题是在脱机模式下,字体图标不会显示。 在脱机模式下,我可以看到“网络”选项卡中状态为“失败”的文件Angular 7 PWA-脱机模式下缺少字体超棒图标,angular,font-awesome,progressive-web-apps,offline-caching,angular-service-worker,Angular,Font Awesome,Progressive Web Apps,Offline Caching,Angular Service Worker,问题是在脱机模式下,字体图标不会显示。 在脱机模式下,我可以看到“网络”选项卡中状态为“失败”的文件 在dist文件夹中生成& 在应用程序选项卡的缓存中-例如/fa-solid-900.fb493903265cad425ccd.woff2 非常感谢您的帮助。详情如下-提前感谢 阿米特·科利 程序包文件中的相关条目为- "@angular/animations": "7.1.3", "@angular/common": "7.1.3", "@angular/compiler": "7.1.3",
"@angular/animations": "7.1.3",
"@angular/common": "7.1.3",
"@angular/compiler": "7.1.3",
"@angular/core": "7.1.3",
"@angular/forms": "7.1.3",
"@angular/http": "7.1.3",
"@angular/platform-browser": "7.1.3",
"@angular/platform-browser-dynamic": "7.1.3",
"@angular/pwa": "^0.10.6",
"@angular/router": "7.1.3",
"@angular/service-worker": "7.1.3",
"@fortawesome/fontawesome-free": "^5.5.0",
在ngsw-config.json-
"/favicon.ico",
"/index.html",
"/*.css",
"/*.js",
"/*.woff",
"/*.woff2",
"/*.ttf",
"/fontawesome-webfont*"
]
Manifest.json-
"short_name": "TALSWeb",
"theme_color": "#00A160",
"background_color": "#fafafa",
"display": "standalone",
"scope": "/",
"start_url": "/",
生成的ngsw.json文件摘录了-
"assetGroups": [
{
"name": "app",
"installMode": "prefetch",
"updateMode": "prefetch",
"urls": [
"/fa-brands-400.659c4d58b00226541ef9.woff2",
"/fa-brands-400.8b7a9afd7b95f62e6ee8.woff",
"/fa-brands-400.b69de69a4ff8ca0abe96.ttf",
"/fa-regular-400.0b5e3a5451fc62d9023c.woff",
"/fa-regular-400.b48c48ea8457846a5695.ttf",
"/fa-regular-400.bdadb6ce95c5a2e7b673.woff2",
"/fa-solid-900.48f54f63d7711d0912a9.ttf",
"/fa-solid-900.bcb927a742a8370b7664.woff",
"/fa-solid-900.fb493903265cad425ccd.woff2",
"/favicon.ico",
"/index.html",
"/main.cbcf9854dbe01b31ca0f.js",
"/polyfills.fab331e3b568bcb25c34.js",
"/runtime.a66f828dca56eeb90e02.js",
"/scripts.8d6556ad089996471ba5.js",
"/styles.e844927534017e9a8be0.css"
],
在ngsw-config.json文件中,您必须在assetGroup内输入css文件的整个cdn url/目录路径
所以它可以在第一次加载时缓存。对我来说,问题是FA查询中有版本号,因此它导致workbox不缓存它,因为它认为它是另一个资源 因此,需要设置ignoreURLParametersMatching参数,文档中的更多信息:这是我的配置:
"name": "assets",
"installMode": "lazy",
"updateMode": "prefetch",
"resources": {
"files": [
"/assets/**",
"/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)",
"/*-es5*.js"
],
"urls": [
"https://fonts.googleapis.com/**"
]
}