Obsługiwane środowiska pakietu SDK Firebase JavaScript

Obsługiwane środowiska

Pakiet SDK Firebase JavaScript jest oficjalnie obsługiwany w środowiskach wymienionych poniżej.

Przeglądarki

Usługa Firebase Edge Firefox Chrome Safari na iOS Safari
App Check
Analytics
Authentication
Cloud Firestore
(z wyjątkiem
trwałości)

(z wyjątkiem
trwałości
w przypadku iOS < 10)
Cloud Functions
Instalacje: Firebase
Cloud Messaging
(Edge 17+, oprócz urządzeń mobilnych)
Cloud Storage
Performance Monitoring
Realtime Database
Remote Config
Vertex AI in Firebase

Inne środowiska

Usługa Firebase React Native Node.js Rozszerzenia
Chrome
Kordowa
App Check
(używając dostawcy niestandardowego do atestu urządzenia natywnego)

(z pomocą dostawcy niestandardowego)
Analytics
Authentication
(zobacz uwagę).

(zobacz uwagę).

(zobacz uwagę).

(zobacz uwagę).
Cloud Firestore
(z wyjątkiem
trwałości)

(z wyjątkiem
trwałości)
Cloud Functions
Instalacje: Firebase
Cloud Messaging
Cloud Storage
(z wyjątkiem
przesłanych)
Performance Monitoring
Realtime Database
Remote Config
Vertex AI in Firebase

Polyfill

Pakiet SDK Firebase JavaScript jest zgodny z najnowszymi standardami platformy internetowej. Niektóre starsze przeglądarki i środowiska JavaScript nie obsługują wszystkich funkcji wymagane przez Firebase. Jeśli musisz obsługiwać te przeglądarki/środowiska, muszą odpowiednio wczytywać elementy polyfill.

W poniższych sekcjach znajdziesz większość zasobów polyfill, których możesz potrzebować.

Wymagane elementy polyfill

Środowiska Polyfill
Safari 7 i 8 i 9. Stabilny ES
Węzeł < 6,5 Stabilny ES

Opcjonalne elementy polyfill

Środowiska Polyfill Usługi Firebase
  • Węzeł
  • Safari < 10,1
  • iOS < 10,3
pobieranie
  • Cloud Functions
  • Performance Monitoring
  • React Native i Expo
base-64
  • Cloud Storage

Sugerowane elementy polyfill

Polyfill Licencja
Hiszpania Stabilny MIT
pobieranie MIT
base-64 MIT

Wymagana konfiguracja Polyfill na potrzeby reklam natywnych i Expo React

W przypadku reklam natywnych i ekspozycyjnych z reakcji React, jeśli przesyłasz ciąg zakodowany w standardzie base-64, musisz wykonać te czynności:

Zainstaluj base-64 z npm:

npm install base-64

Zaimportuj plik decode z usługi base-64 i podłącz go do zakresu globalnego jako atob, aby Cloud Storage ma do niego dostęp.

import { decode } from 'base-64';

if(typeof atob === 'undefined') {
  global.atob = decode;
}

Dodaj kod polyfill w aplikacji

Opcja 1. (Zalecane) Użyj kreatora pakietów zintegrowanego z Babel

Jeśli korzystasz z narzędzia do tworzenia pakietów, zintegruj je z usługą Babel i @babel/preset-env, aby otrzymać (kody polyfill).

Skorzystaj z interaktywnego przewodnika konfiguracji Babel, aby dowiedzieć się więcej jak zintegrować Babel z narzędziem pakietu.

Dzięki Babel nie musisz się martwić o dokładne uwzględnienie kodu polyfill. W tym celu określasz minimalną liczbę środowisk przeglądarek, które mają być obsługiwane. Następnie Babel doda niezbędne elementy polyfill. Babel zapewnia wymagania dotyczące obsługi przeglądarek są zawsze spełnione, nawet jeśli Firebase lub Twoja zaczyna korzystać z nowych funkcji ES.

@babel/preset-env zawiera szczegółowe informacje informacje o dostępnych opcjach konfiguracji umożliwiających określenie środowiska (opcja targets) i dodanie kodu polyfill (opcja useBuiltIns).

Opcja 2. (Niezalecane) Dodaj kod polyfill ręcznie

Elementy polyfill możesz dodać ręcznie, korzystając z ulubionych bibliotek polyfill (na np. core-js).

import 'core-js/stable'
import 'cross-fetch/polyfill';

core-js udostępnia też plik polyfill (wszystko w jednym pliku) które możesz umieścić bezpośrednio na stronie HTML.

Ta opcja może być wygodnym sposobem zarządzania kodami polyfill, jeśli nie używasz Babel. Jednak nie zalecamy tego kompleksowego rozwiązania w środowisku produkcyjnym ), ponieważ prawdopodobnie zawiera on niepotrzebne elementy polyfill, wagi, a co za tym idzie – czas wczytywania strony.