反应和服务工作者(工作箱)

时间:2018-05-24 18:44:08

标签: reactjs progressive-web-apps workbox

m trying to figure out how I can combine my react app with workbox as my serviceworker. No matter what I我正在尝试注册我的服务工作时遇到同样的错误。

未捕获(承诺)DOMException:无法注册ServiceWorker:脚本的MIME类型不受支持('text / html')。

在我做了一些研究之后,大多数解决方案都证明它是由开发环境引起的。这是真的?如果是这样,我如何在开发环境中注册服务工作者,尤其是工作箱。

我的index.js中的我的代码片段

if( 'serviceWorker' in navigator ) {
   console.log("Supported!")
   navigator.serviceWorker
                   .register( 'sw.js' , { scope : ' ' } )
                   .then( function( ) {
                       console.log('Congratulations!!Service Worker Registered');
                   })
                   .catch( function() {
                       console.log(`Aagh! Some kind of Error :- `);
                   });
} else {
console.log("Not supported")
}

我的sw.js没有什么比简单的console.log

更多了

1 个答案:

答案 0 :(得分:1)

要检查的事情, 1)create-react-app现在创建了一个开箱即用的PWA应用程序(使用SW和manifest.json文件)。确保您与该文件创建的文件不冲突。我建议使用开箱即用的东西,除非你有明确的理由使用Workbox,它应该适用于任何框架/没有框架,尝试原生的。

2)确保在支持HTTPS(带证书)和服务工作者的服务器上运行您的应用程序。