我正在研究渐进式Web应用程序示例: https://developers.google.com/web/fundamentals/codelabs/your-first-pwapp/
按照指示,我正在注册服务人员的步骤。 这是注册服务工作者的代码:
if ('serviceWorker' in navigator) {
navigator.serviceWorker
.register('./service-worker.js')
.then(function() { console.log('Service Worker Registered'); });
}
您能教我为什么我不能注册服务人员吗?
答案 0 :(得分:1)
您的服务人员未正确链接。提及的路径不正确,因此得到404响应。删除路径和服务工作程序中的“。”,并将包含此脚本的文件放在同一位置。
答案 1 :(得分:0)
我已解决此问题
和即时通讯出现问题
i编码以将“添加到主屏幕”按钮添加到mywebsite
这是myt代码:
let installPromptEvent;
window.addEventListener('beforeinstallprompt' , (event) => {
e.preventDefault();
console.log('before install prompt event')
installPromptEvent = event;
});
document.querySelector('.addtohomescreenbutton a').addEventListener('click' , (event) => {
e.preventDefault();
console.log(installPromptEvent);
if(installPromptEvent) {
installPromptEvent.prompt();
installPromptEvent.userChoice
.then((choiceResult) => {
if(choiceResult.outcome === 'accepted') {
console.log('User Accepted');
} else {
console.log('User dismissed');
}
installPromptEvent = null;
})
}
})
这是我的错误:
Uncaught TypeError: Cannot read property 'addEventListener' of null
at
这是他的台词:
.addEventListener('click' , (event) => {
出什么问题了?
答案 2 :(得分:0)
我通过在名为service-worker的工作目录中创建一个js文件来修复此控制台错误,这是本教程要求您执行的操作。
这将正确链接服务工作者,这意味着您将看到控制台日志消息,表明它已正确注册。