我正在处理我的PWA应用程序。 所以我有一个问题,我找不到任何信息来解决。
我在webpack InjectManifest中使用了工作箱(但也尝试过webpack offline-plugin)。
当我从根目录访问我的网页并脱机时,我可以看到它运行正常。但是,当我将路由更改为“ / authorize”或基本上任何其他路由并脱机时,它都行不通。
是否有任何要求仅在我们位于根路径上时才起作用?除了以下内容,我什么也找不到:https://github.com/quasarframework/quasar-cli/issues/131
答案 0 :(得分:1)
确定。 因此,基本上所有这些都与路由有关。
https://developers.google.com/web/tools/workbox/modules/workbox-routing#how_to_register_a_navigation_route https://developers.google.com/web/tools/workbox/modules/workbox-strategies
就我而言,我一直希望像SPA一样提供内容,因此我不得不添加
workbox.routing.registerNavigationRoute('/index.html');
进入我的工作箱配置。
最后看起来像这样:
1)Webpack插件:
const commonPlugins = [
new workboxPlugin.InjectManifest({
swSrc: './src/workbox-sw.js',
swDest: 'workbox-sw.js',
}),
];
2)workbox-sw的内容
/* globals workbox, self */
workbox.setConfig({
debug: true
});
workbox.core.setCacheNameDetails({
prefix: 'sneak-client',
suffix: 'v1',
precache: 'sneak-precache',
runtime: 'sneak-runtime-cache',
});
workbox.routing.registerNavigationRoute('/index.html');
workbox.precaching.precacheAndRoute(self.__precacheManifest);