默認情況下,新鮮的create-react-app
項目中包含服務工作人員腳本。我不需要默認的registerServiceWorker.js
和默認的service-worker.js
(隱藏並在構建中可用),因爲我想添加我自己的服務工作者。我想用es6語法創建我自己的服務工作者代碼,所以只需將「sw.js」添加到公共文件夾中並將其註冊到我的index.html中對我來說不是最好的選擇。我如何用ES6
create-react-app
建立一些自定義的sw代碼?添加自定義服務工作人員以創建反應應用程序
3
A
回答
1
如果您希望在初始生產部署之前禁用內置服務工作人員,請從src/index.js
刪除對serviceWorkerRegistration.register()
的呼叫並添加您自己的服務人員。
如果您的網站/應用已經投入生產,則用戶訪問你的頁面有serviceWorkerRegistration.unregister()
後其換成serviceWorkerRegistration.unregister().
時,服務人員將被卸載,它可能需要長達24小時的緩存中無效(取決於服務人員的服務方式)
另一種選擇是彈出並配置其內置解決方案。
相關問題
- 1. 應用程序服務器工作人員產生線程嗎?
- 2. 設置代理服務器以創建反應應用程序
- 3. 創建反應應用程序,重新加載不工作
- 4. 自定義添加應用程序鏈接不工作
- 5. 創建反應應用程序不工作時添加到Android主屏幕
- 6. 創建自定義Twitter應用程序
- 7. 自定義Grails創建應用程序
- 8. Android應用程序TCP工作人員
- 9. 創建反應應用程序和反應工具箱輸入
- 10. 如何添加谷歌recaptcha創建反應的應用程序?
- 11. 創建反應應用程序不工作
- 12. 我的生產服務器緩慢加載創建反應應用程序
- 13. 爲Meteor應用程序創建自定義CLI工具
- 14. 自定義Facebook角色(開發人員應用程序)
- 15. AWS Beanstalk - 自定義應用程序以創建dynamodb表
- 16. 創建自定義鏈接類型以打開應用程序
- 17. Azure服務應用程序[Mobileservice] - 自定義錯誤響應
- 18. 創建服務(惡魔)應用程序
- 19. 如何爲websphere(應用程序服務器)創建自定義存儲庫?
- 20. 創建一個自定義的代理服務器應用程序
- 21. 如何創建Java應用程序服務器的自定義對象池
- 22. Django和服務工作人員 - 在應用程序根URL下提供「sw.js」
- 23. 爲java應用程序創建自定義安裝程序
- 24. 如何創建私人Android應用程序下載服務器
- 25. 應用程序服務器工作
- 26. 工作流服務應用程序
- 27. 添加路徑時,webpack創建靜態資產文件反應,創建反應的應用程序
- 28. Heroku應用程序可以向自己添加/刪除dynos或工作人員嗎?
- 29. 人員選取器中的應用程序製造商自定義操作
- 30. 可以使用TypeScript創建反應應用程序
然後,默認的'service-worker.js'仍然會在構建文件夾中生成並可用。我有興趣用'ES6'編寫我自己的服務工作者來替換它與構建文件夾中的服務工作者。我現在只是將我的sw代碼寫入公共文件夾的單獨'sw.js'文件中,但它只是普通的vanilla js代碼。 – Dude
在官方存儲庫中有類似的建議,請看:https://github.com/facebookincubator/create-react-app/pull/2714 - 與此同時,正如我之前所說的,您有能力「彈出」,並做任何你喜歡:) –
我從來沒有在我的index.js serviceWorkerRegistration.register(),但工人繼續工作,必須從/node_modules/react-scripts/template/index.js? – stackdave