我正在阅读ServiceWorker入门文档https://developers.google.com/web/fundamentals/getting-started/primers/service-workers。了解ServiceWorker注册
所以首先我们注册我们的ServiceWorker的范围。所以我做了如下
<!DOCTYPE html>
<html>
<head>
<title>Getting started with Service Worker</title>
</head>
<body>
<script type="text/javascript">
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/sw.js').then(function(registration) {
// Registration was successful
console.log('ServiceWorker registration successful with scope: ', registration.scope);
}, function(err) {
// registration failed :(
console.log('ServiceWorker registration failed: ', err);
});
});
}
</script>
</body>
</html>
,并创建了一个sw.js文件,并写了一个内部的console.log sw.js
console.log("This is sw.js")
所以,当我访问index.html文件中的第一次,该console.log被执行并且ServiceWorker注册成功消息被打印。但是,当我第二次刷新页面时,它仅打印成功的ServiceWorker注册消息。那么为什么它没有第二次在sw.js中执行console.log。我期待它第二次执行console.log。我在这里错过了点吗?
只是FWIW,有时人们得到[在职职工(https://www.w3.org/ TR/service-workers-1 /)和通用[web工作者](https://www.w3.org/TR/workers/)混淆。你确定你想要一个服务工作者为你做什么?服务工作者是一种特殊的网络工作者,用于管理页面资源(例如离线应用程序)。 –