FCM Firebase Angular - PullRequest
       6

FCM Firebase Angular

0 голосов
/ 06 марта 2020

У меня есть вопрос об интеграции FCM в angular проекте. Так что это мой сервисный работник

// Note that you can only use Firebase Messaging here, other Firebase libraries
// are not available in the service worker.
importScripts('https://www.gstatic.com/firebasejs/7.6.0/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/7.6.0/firebase-messaging.js');

// Initialize the Firebase app in the service worker by passing in the
// messagingSenderId.
firebase.initializeApp({
    apiKey: "apiKey",
    authDomain: "domain",
    databaseURL: "url",
    projectId: "id",
    storageBucket: "bucket",
    messagingSenderId: "senderId",
    appId: "appId",
    measurementId: "measurementId"
});

// Retrieve an instance of Firebase Messaging so that it can handle background
// messages.
const messaging = firebase.messaging();

Я хочу, чтобы эта часть кода

{
    apiKey: "apiKey",
    authDomain: "domain",
    databaseURL: "url",
    projectId: "id",
    storageBucket: "bucket",
    messagingSenderId: "senderId",
    appId: "appId",
    measurementId: "measurementId"
}

была предоставлена ​​в отдельном файле json, а затем импортирована в сервисного работника js файл, а затем используется в методе initializeApp. Javascript имеет только асин c способы получения файла json, есть ли не асин c метод. Любые советы и предложения могут помочь. Thx

1 Ответ

0 голосов
/ 09 марта 2020

Я создал еще один параметр firebase-options. js в папке ресурсов, например,

const firebaseOptions =  {
    "apiKey": "apiKey",
    "authDomain": "domain",
    "databaseURL": "url",
    "projectId": "id",
    "storageBucket": "bucket",
    "messagingSenderId": "senderId",
    "appId": "appId",
    "measurementId": "measurement Id"
};

, а затем импортировал этот скрипт в файл firebase-sw. js, например,

* 1005. *

Это был своего рода обходной путь, потому что я на самом деле не читаю опции из файла json, а из файла js, но он сделал это.

...