繁体   English   中英

当我尝试在反应应用程序中注册服务工作者文件时,它会给我一个参考错误:未定义导航器

[英]When I try to register a service worker file in react app it will give me a reference error: navigator is not defined

export default function swDev() {
    let swUrl = `${process.env.PUBLIC_URL}/sw.js`
    if('serviceWorker' in navigator) {
        navigator.serviceWorker.register(swUrl).then((res) => {
            console.warn("response", res)
        }).catch((err) => {
            console.warn("error is: ", err)
        })
    } else {
        console.log("service worker is not supported")
    } 
}

这是以下代码,我在我的 react 应用程序的 index.js 文件中也调用了这个 function。 还创建了一个简单的 sw.js 文件,并附有该文件的消息。

您还应该检查是否定义了 window。 服务工作者应该只在服务器端初始化

(typeof window != 'undefined' && window.document);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM