WorkboxSW构造函数抛出错误未定义

时间:2018-03-13 11:12:47

标签: progressive-web-apps sw-precache workbox sw-toolbox

在我的服务工作者文件中,我使用的是此代码:

importScripts("https://storage.googleapis.com/workbox-cdn/releases/3.0.0-beta.2/workbox-sw.js");
const workbox = new WorkboxSW();

但是我收到错误 Uncaught ReferenceError: WorkboxSW is not defined 因此我的服务人员没有注册。

1 个答案:

答案 0 :(得分:2)

在Workbox v3中,您通常不会显式构造WorkboxSW实例。相反,在全局范围中公开了一个workbox变量,它提供了库的接口。

以下是一个例子,不包括migration guide

  

以前在第2版:

importScripts('<path to workbox-sw>/importScripts/workbox-sw.prod.v2.1.3.js');

const workbox = new WorkboxSW({
  skipWaiting: true,
  clientsClaim: true,
  // etc.
});

workbox.router.registerRoute(...);
  

在v3中,您只需导入workbox-sw.js脚本,并且即时使用的实例将在全局命名空间中自动作为工作箱使用:

importScripts('<path to workbox-sw>/3.0.0/workbox-sw.js');

// workbox is implicitly created and ready for use.
workbox.routing.registerRoute(...);