美文网首页
【前-WorkBox系列】官方文档教程说明

【前-WorkBox系列】官方文档教程说明

作者: 一颗语法糖 | 来源:发表于2018-11-10 11:32 被阅读0次

    【第一章 WorkBox 简介】

    1.1 什么是Work Box

    workBox由许多node模块和插件库组成的一个库,可以轻松缓存资产并充分利Service Worker的特性用于构建Progressive Web Apps的功能。

    1.2 为什么是workBox

    workbox集合了许多优秀的实践,降低了开发者们使用service work过程中的难度。

    • 预缓存
    • 运行时缓存
    • 策略
    • 请求路由
    • 后台同步
    • 有帮助的测试
    • 比sw-precache和sw-toolbox具有更大的灵活性和功能集

    1.3 基础实例

    • Cache JavaScript and CSS
     workbox.routing.registerRoute(
      /\.(?:js|css)$/,
      workbox.strategies.staleWhileRevalidate(),
    ); 
    
    • Cache Images
    workbox.routing.registerRoute(
      /\.(?:png|gif|jpg|jpeg|svg)$/,
      workbox.strategies.cacheFirst({
        cacheName: 'images',
        plugins: [
          new workbox.expiration.Plugin({
            maxEntries: 60,
            maxAgeSeconds: 30 * 24 * 60 * 60, // 30 Days
          }),
        ],
      }),
    ); 
    

    一个完整的实例:官方:使用入門

    【第二章 WorkBox I开发指南】

    翻译自官网:使用入门

    2.1 预缓存文件

    2.2 路由请求

    2.3 配置workbox

    2.4 处理第三方请求

    2.5 使用插件

    2.6 常用案例

    2.7 排除故障并进行调试

    2.8 了解存储配额

    第三章 【插件和模块】

    使用更多模块

    在workbox里每个模块都可以帮助开发人员定制service work的特定行为。下面,我们就来简要梳理一下workbox提供的基本模块。
    关于模块的更多详尽内容,可以点击下面的文章链接查看详情。

    3.1 workbox模块

    根据需要管理加载模块并提供帮助方法。
    翻译【前-workbox-模块1】workbox
    workbox官方英文文档

    3.2 workbox.core

    通过workbox.core更改日志级别并更改缓存名称。 包含所有Workbox库使用的共享代码。(看名字就知道了,核心嘛)
    翻译【前-workbox-模块2】workbox.core
    core官方英文文档

    3.3 workbox.precaching

    轻松预先缓存一组文件并有效管理文件更新。
    【前-workbox-模块3】workbox.precaching
    precaching官方英文文档

    3.4 workbox.routing

    将service worker的请求路由到特定的缓存策略或回调函数。
    【前-workbox-模块4】workbox.routing
    routing官方英文文档

    3.5 workbox.strategies

    一组运行时缓存策略,用于处理对请求的响应,通常与workbox.routing一起使用。
    【前-workbox-模块5】workbox.strategies
    strategies官方英文文档

    3.6 workbox.expiration

    根据缓存中的项目数或缓存请求的期限删除缓存的请求。
    【前-workbox-模块6】workbox.expiration
    expiration官方英文文档

    3.7 workbox.backgroundSync

    即使用户离线,也可以使用后台同步可靠地发出网络请求。
    【前-workbox-模块7】workbox.backgroundSync
    backgroundSync官方英文文档

    3.8 workbox.googleAnalytics

    了解用户在离线时如何与您的网站进行互动。
    【前-workbox-模块8】workbox.googleAnalytics
    googleAnalytics官方英文文档

    3.9 workbox.cacheableResponse

    根据响应的状态代码或标头限制缓存哪些请求。
    【前-workbox-模块9】workbox.cacheableResponse
    cacheableResponse官方英文文档

    3.10 workbox.broadcastUpdate

    使用新响应更新缓存时,将消息发送到页面(通过广播通道)。
    【前-workbox-模块10】workbox.broadcastUpdate
    broadcastUpdate官方英文文档

    3.11 workbox.rangeRequest

    此模块支持使用一段先前缓存的数据响应。
    rangeRequest官方英文文档

    3.12 workbox.streams

    此模块支持编写来自一系列流媒体源的响应。
    streams官方英文文档

    3.13 workbox.navigationPreload)

    启用导航预加载,以更快地获得导航请求的网络响应。
    【前-workbox-模块11】workbox.navigationPreload
    navigationPreload官方英文文档

    3.14 三个Node模块

    这三个node模块其实也就是对应这3中workbox的构建方法


    可以看到,这13+3个模块,前13个涵盖了workbox的绝大多数操作,后三个模块,测试从项目构建的角度方便开发者。

    目前从文档支持来看,workBox支持了三种构建方式。

    (1)workbox CLI
    (2)workbox-build
    (3)workbox-webpack-plugin

    后续内容持续翻译~

    相关文章

      网友评论

          本文标题:【前-WorkBox系列】官方文档教程说明

          本文链接:https://www.haomeiwen.com/subject/isukwftx.html