Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.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
如何为生成的服务人员禁用workbox webpack插件的警告_Webpack_Progressive Web Apps_Workbox Webpack Plugin - Fatal编程技术网

如何为生成的服务人员禁用workbox webpack插件的警告

如何为生成的服务人员禁用workbox webpack插件的警告,webpack,progressive-web-apps,workbox-webpack-plugin,Webpack,Progressive Web Apps,Workbox Webpack Plugin,我为我的工人一代使用GenerateSw类。 它工作正常,但我需要为脱机页面预先设置webpack未处理的一些资源,因此我使用: additionalManifestEntries: [ '/offline', 'https://static.express/img/laksjhdaskldfjlaljsafsp/connection-lost.svg' ] 尽管mode属性设置为prod,但我仍面临此警告。 问题:我可以隐藏它们吗?您可以通过切换到具有url:属性和revi

我为我的工人一代使用GenerateSw类。 它工作正常,但我需要为脱机页面预先设置webpack未处理的一些资源,因此我使用:

additionalManifestEntries: [
    '/offline',
    'https://static.express/img/laksjhdaskldfjlaljsafsp/connection-lost.svg'
]
尽管mode属性设置为prod,但我仍面临此警告。


问题:我可以隐藏它们吗?

您可以通过切换到具有
url:
属性和
revision:null
属性的对象来避免这些警告,以指示它们已经根据其url进行了唯一修改

additionalManifestEntries: [
  {url: '/offline', revision: null},
  {url: 'https://static.express/img/.../connection-lost.svg', revision: null},
]
但是。。。如果您这样做,并且您的URL中实际上不包含任何唯一的修订信息,则您的用户最终将无限期地“卡住”旧版本,例如,
/offline
,即使您对
/offline
进行更改并重新部署。这就是为什么Workbox让这项工作变得“困难”的原因


缓存其他URL的更好方法是设置一个运行时缓存路由,该路由将在URL上使用特定的策略,并可能使用该策略对缓存进行“预热”。例如,对这些url使用
StaleWhileRevalidate
策略将确保它们最终会被更新。

您可以通过切换到具有
url:
属性和
revision:null
属性的对象来避免这些警告,以指示它们已经根据其url进行了唯一的修改

additionalManifestEntries: [
  {url: '/offline', revision: null},
  {url: 'https://static.express/img/.../connection-lost.svg', revision: null},
]
但是。。。如果您这样做,并且您的URL中实际上不包含任何唯一的修订信息,则您的用户最终将无限期地“卡住”旧版本,例如,
/offline
,即使您对
/offline
进行更改并重新部署。这就是为什么Workbox让这项工作变得“困难”的原因

缓存其他URL的更好方法是设置一个运行时缓存路由,该路由将在URL上使用特定的策略,并可能使用该策略对缓存进行“预热”。例如,对这些URL使用
StaleWhileRevalidate
策略将确保它们最终会被更新。

谢谢杰夫!“变暖策略”听起来很酷,但据我所知,只有在路由时加载的文件才能传递到该策略。脱机页面将永远不会被访问,直到没有连接,这就是我需要预缓存的原因。通过“预热”,您可以在服务人员的
安装
步骤中预填充运行时缓存。这与使用
workbox precaching
时发生的情况非常相似,只是您将依靠运行时策略来保持资源最新,而不是precache清单。谢谢Jeff!“变暖策略”听起来很酷,但据我所知,只有在路由时加载的文件才能传递到该策略。脱机页面将永远不会被访问,直到没有连接,这就是我需要预缓存的原因。通过“预热”,您可以在服务人员的
安装
步骤中预填充运行时缓存。这与使用
workbox预缓存时发生的情况非常相似,不同的是您将依赖运行时策略来保持资源最新,而不是预缓存清单。