Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 一个档案中有两名服务人员_Javascript_Firebase_Firebase Cloud Messaging_Service Worker - Fatal编程技术网

Javascript 一个档案中有两名服务人员

Javascript 一个档案中有两名服务人员,javascript,firebase,firebase-cloud-messaging,service-worker,Javascript,Firebase,Firebase Cloud Messaging,Service Worker,我不知道我是做对了还是有其他的方法。我有一个用于缓存的服务工作者,我还需要实现Firebase云消息传递,这需要一个服务工作者。我的第一个服务人员是在我的项目的根,我有这个 importScripts('https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js'); if(工作箱){ workbox.precaching.precacheAndRoute([ { “url”:“icon-128x128.png”

我不知道我是做对了还是有其他的方法。我有一个用于缓存的服务工作者,我还需要实现Firebase云消息传递,这需要一个服务工作者。我的第一个服务人员是在我的项目的根,我有这个

importScripts('https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js');
if(工作箱){
workbox.precaching.precacheAndRoute([
{
“url”:“icon-128x128.png”,
“修订版”:“af75a93ca2c343f1129dd7ee02fd4da7”
},
{
...
}
]);
workbox.routing.registerRoute(
/^\/$/,
新workbox.strategies.NetworkFirst({
cacheName:'静态资源',
})
);
workbox.routing.registerRoute(
/^\/([^/]+\.htm)$/,
新workbox.strategies.NetworkFirst({
cacheName:'静态资源',
})
);
/**
workbox.routing.registerRoute(
/\.(?:js | css)$/,
新workbox.strategies.StaleWhileRevalidate({
cacheName:'静态资源',
})
);
**/
workbox.routing.registerRoute(
/\.(?:js | css)$/,
新workbox.strategies.StaleWhileRevalidate({
cacheName:'静态资源',
})
);
workbox.routing.registerRoute(
//缓存图像文件。
/\.(?:png | jpg | jpeg | svg | gif)$/,
//如果缓存可用,请使用它。
新的workbox.strategies.CacheFirst({
//使用自定义缓存名称。
cacheName:“图像缓存”,
插件:[
新的workbox.expiration.Plugin({
//仅缓存50个图像。
maxEntries:50,
//缓存最多一周。
最大秒数:7*24*60*60,
})
],
})
);

console.log(`Yay!Workbox已加载我刚刚将我的service worker文件重命名为
firebase messaging sw.js
,用于两个worker,它同时注册了这两个worker。这对我来说是有效的。

您完全可以将它们组合在一起。您没有显示注册软件的代码。请将其添加到您的q中。