如何将 Google 的工作箱添加到 Angular 项目中?
How do I add Google's Workbox to an Angular project?
我正在尝试在我的项目中使用 Google 的 Workbox,但目前没有关于让 Workbox 使用新的 angular 项目的步骤的教程或指南。自从 angular 使用打字稿而不是直接 js 以来,有人对如何完成这类事情有任何见解或资源吗?例如,工作箱向导是否适用于 angular 项目,或者我是否需要做任何特殊的事情?
您可以通过多种方式在您的 Angular 项目中使用 Workbox
如果您使用 webpack,您可以使用 workbox-webpack-plugin
轻松生成一个 service worker,关于如何使用它的所有内容都很详细 here。
您可以使用 GenerateSW
生成一个完整的工作服务工作者、运行时缓存等。还有 InjectManifest
插件来创建预缓存清单并将其注入您自己的服务工作者。
顺便说一句,如果你宁愿自己写而不是使用插件,你仍然可以在你的 Angular 项目中使用直接 js 编写你的服务工作者,并使用 Angular ServiceWorkerModule
使用 register()
函数将其注册到您的应用程序(这应该在主 Angular 模块的 imports
数组中完成)。
您还需要使用 importScripts('https://storage.googleapis.com/workbox-cdn/releases/3.6.2/workbox-sw.js');
将工作箱库导入您的服务工作者
我从来没有使用过工作箱向导,所以我不能告诉你更多关于它的信息,但上面的内容应该可以解决问题。
我正在尝试在我的项目中使用 Google 的 Workbox,但目前没有关于让 Workbox 使用新的 angular 项目的步骤的教程或指南。自从 angular 使用打字稿而不是直接 js 以来,有人对如何完成这类事情有任何见解或资源吗?例如,工作箱向导是否适用于 angular 项目,或者我是否需要做任何特殊的事情?
您可以通过多种方式在您的 Angular 项目中使用 Workbox
如果您使用 webpack,您可以使用 workbox-webpack-plugin
轻松生成一个 service worker,关于如何使用它的所有内容都很详细 here。
您可以使用 GenerateSW
生成一个完整的工作服务工作者、运行时缓存等。还有 InjectManifest
插件来创建预缓存清单并将其注入您自己的服务工作者。
顺便说一句,如果你宁愿自己写而不是使用插件,你仍然可以在你的 Angular 项目中使用直接 js 编写你的服务工作者,并使用 Angular ServiceWorkerModule
使用 register()
函数将其注册到您的应用程序(这应该在主 Angular 模块的 imports
数组中完成)。
您还需要使用 importScripts('https://storage.googleapis.com/workbox-cdn/releases/3.6.2/workbox-sw.js');
我从来没有使用过工作箱向导,所以我不能告诉你更多关于它的信息,但上面的内容应该可以解决问题。