Javascript 如何将网页包哈希名称添加到服务工作者文件?
我正在为我的应用程序学习服务人员。 这本服务人员食谱()对我很有帮助 我正在配置“缓存、更新和刷新”策略,但不知道如何将网页包哈希名称添加到服务工作者文件中 对此,我知道有几个选择Javascript 如何将网页包哈希名称添加到服务工作者文件?,javascript,reactjs,webpack,hash,Javascript,Reactjs,Webpack,Hash,我正在为我的应用程序学习服务人员。 这本服务人员食谱()对我很有帮助 我正在配置“缓存、更新和刷新”策略,但不知道如何将网页包哈希名称添加到服务工作者文件中 对此,我知道有几个选择 工作箱() 西南预切() sw precache网页包插件() 但我只想让服务工作者文件没有插件或第三工具,并把网页包chunkhash文件名到我的服务工作者文件 my-sw.js var CACHE='CACHE update and refresh'; self.addEventListener('instal
var CACHE='CACHE update and refresh';
self.addEventListener('install',函数(evt){
log('正在安装服务工作者');
evt.waitill(caches.open(CACHE).then(函数(CACHE){
cache.addAll([
“./controlled.html”,
“/资产”,
//这里有个问题,怎么说呢?
/**
main.72b835f75acd535f504c.js,
vendor.d6b44fd0b72071c85ce2.js,
关于d31139a7f363d5254560.js,
等
**/
]);
}));
});
self.addEventListener('fetch',函数(evt){
log('服务人员正在为资产提供服务');
响应(fromCache(evt.request));
等待(
更新(evt.请求)
。然后(刷新)
);
});
函数fromCache(请求){
返回缓存。打开(缓存)。然后(函数(缓存){
返回cache.match(请求);
});
}
功能更新(请求){
返回缓存。打开(缓存)。然后(函数(缓存){
返回fetch(请求)。然后返回函数(响应){
返回cache.put(request,response.clone())。然后返回(function(){
返回响应;
});
});
});
}
//向客户端发送消息。
函数刷新(响应){
返回self.clients.matchAll().then(函数(客户端){
clients.forEach(函数(客户端){
var消息={
键入:“刷新”,
url:response.url,
eTag:response.headers.get('eTag')
};
client.postMessage(JSON.stringify(message));
});
});
}
我们还使用一些Grunt/Gulp/other工具任务在构建过程中创建此列表。我认为不自动化这不是一个好主意,因为您可能也不会手动为您的文件创建哈希或其他版本字符串。