Firebase メッセージング (ウェブ) を使用しようとしています。Firebase はデフォルトで、サービス ワーカーを保持するファイル「firebase-messaging-sw.js」を検索します。
サービス ワーカー スクリプトは、アプリケーションの絶対パス上に配置する必要があります。例:ローカルホスト
このデフォルトの場所を変更するにはどうすればいいでしょうか?! 公式ドキュメントを検索して、useServiceWorker
サービス ワーカーの登録を受け入れるこのメソッドを見つけましたが、これを使用しようとすると、メソッドが存在しないというエラーが発生します。
では、Firebase メッセージングのサービス ワーカーの場所を変更するにはどうすればよいでしょうか?
ベストアンサー1
マイケルが指摘したように、使用する方法は ですuseServiceWorker(<registration>)
。
https://firebase.google.com/docs/reference/js/firebase.messaging.Messaging#useServiceWorker
Messaging クラスは、 を呼び出したときに返されるものですfirebase.message()
。
したがって、サンプルは次のようになります。
navigator.serviceWorker.register('./example/sw.js')
.then((registration) => {
messaging.useServiceWorker(registration);
// Request permission and get token.....
});
Github のデモ アプリでこれを問題なく試してみました:https://github.com/firebase/quickstart-js/tree/master/messaging