Service Worker PostMessage 错误
Service Worker PostMessage Error
我有以下内容:
//main.js
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('worker.js').then(function(worker){
// firebase.messaging().useServiceWorker(worker);
navigator.serviceWorker.controller.postMessage([MESSAGE HERE]);
});
}
在worker.js中:
self.onmessage=function(e){
console.log(e.data);
}
但在 main.js 中,我收到此错误:
Uncaught TypeError: Cannot read property 'postMessage' of null
为什么会这样?
这是因为您要使用
行进入一个新函数
navigator.serviceWorker.register('worker.js').then(function(worker){
并将您的服务人员作为 'worker'
传递
你应该可以替换
navigator.serviceWorker.controller.postMessage([MESSAGE HERE]);
和
worker.active.postMessage('your message');
我有以下内容:
//main.js
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('worker.js').then(function(worker){
// firebase.messaging().useServiceWorker(worker);
navigator.serviceWorker.controller.postMessage([MESSAGE HERE]);
});
}
在worker.js中:
self.onmessage=function(e){
console.log(e.data);
}
但在 main.js 中,我收到此错误:
Uncaught TypeError: Cannot read property 'postMessage' of null
为什么会这样?
这是因为您要使用
行进入一个新函数navigator.serviceWorker.register('worker.js').then(function(worker){
并将您的服务人员作为 'worker'
传递你应该可以替换
navigator.serviceWorker.controller.postMessage([MESSAGE HERE]);
和
worker.active.postMessage('your message');