支持 workbox-cli 中 non-webpack 用户的捆绑
Support bundling for non-webpack users in workbox-cli
我是 运行 我的 dist 目录中的以下命令。
workbox copyLibraries dist/en-in/; workbox generateSW workbox-config-prod.js;
Service Worker 文件调用
importScripts("/workbox-v4.3.1/workbox-sw.js");
workbox-sw.js 下载以下文件:
workbox-core.prod.js
workbox-precaching.prod.js
workbox-routing.prod.js
workbox-strategies.prod.js
workbox-expiration.prod.js
workbox-cacheable-response.prod.js"
问题 1:
我已经为从 /workbox-v4.3.1/ 路径提供的所有文件设置了长期过期缓存 headers
因为它是版本化的。这种方法有什么缺点吗?
问题二:
Workbox 能否为不使用任何捆绑器的团队提供支持?
如果workbox-cli可以输出单个文件,其中有
1. 仅在 workbox-config 文件中引用的那些 Workbox 模块。
2. 从 workbox-config 文件生成的代码。
3.缩小版
这就是 sw-precache 用来生成服务工作者文件的方式。
I have set long expiry cache headers on all files served from
/workbox-v4.3.1/ path since it is versioned. Is there any downside to
this approach?
这种方法没有缺点,因为正如您提到的,/v4.3.1/
路径段用于您的 URL,因此内容永远不会改变。关于是否实际检查通过 importScripts()
加载的 URLs(所有 Workbox URLs 都会发生)有一些细微差别,这在 [=17 中有详细说明=].但是你用 Cache-Control
headers 做的应该没问题。
Can Workbox provide support for teams which don't use any bundlers?
对于 Workbox v5(截至 2019 年 11 月,在 pre-release 中)这很简单,使用 generateSW
和以下配置:
{
inlineWorkboxRuntime: true,
mode: 'production',
sourcemap: false,
// ...other options...
}
这将生成一个单一的服务工作者文件,其中包括内联的 Workbox 运行时,缩小的,没有源映射,这与输出得到的一样简单。在后台,Workbox 将使用 Rollup 为您创建一个自定义捆绑包,该捆绑包仅包含您实际需要的 Workbox 部分,因此您不必担心自己进行捆绑。
我是 运行 我的 dist 目录中的以下命令。
workbox copyLibraries dist/en-in/; workbox generateSW workbox-config-prod.js;
Service Worker 文件调用
importScripts("/workbox-v4.3.1/workbox-sw.js");
workbox-sw.js 下载以下文件:
workbox-core.prod.js
workbox-precaching.prod.js
workbox-routing.prod.js
workbox-strategies.prod.js
workbox-expiration.prod.js
workbox-cacheable-response.prod.js"
问题 1:
我已经为从 /workbox-v4.3.1/ 路径提供的所有文件设置了长期过期缓存 headers 因为它是版本化的。这种方法有什么缺点吗?
问题二:
Workbox 能否为不使用任何捆绑器的团队提供支持?
如果workbox-cli可以输出单个文件,其中有 1. 仅在 workbox-config 文件中引用的那些 Workbox 模块。 2. 从 workbox-config 文件生成的代码。 3.缩小版 这就是 sw-precache 用来生成服务工作者文件的方式。
I have set long expiry cache headers on all files served from /workbox-v4.3.1/ path since it is versioned. Is there any downside to this approach?
这种方法没有缺点,因为正如您提到的,/v4.3.1/
路径段用于您的 URL,因此内容永远不会改变。关于是否实际检查通过 importScripts()
加载的 URLs(所有 Workbox URLs 都会发生)有一些细微差别,这在 [=17 中有详细说明=].但是你用 Cache-Control
headers 做的应该没问题。
Can Workbox provide support for teams which don't use any bundlers?
对于 Workbox v5(截至 2019 年 11 月,在 pre-release 中)这很简单,使用 generateSW
和以下配置:
{
inlineWorkboxRuntime: true,
mode: 'production',
sourcemap: false,
// ...other options...
}
这将生成一个单一的服务工作者文件,其中包括内联的 Workbox 运行时,缩小的,没有源映射,这与输出得到的一样简单。在后台,Workbox 将使用 Rollup 为您创建一个自定义捆绑包,该捆绑包仅包含您实际需要的 Workbox 部分,因此您不必担心自己进行捆绑。