Obsługiwane środowiska dla pakietu SDK Firebase JavaScript

Obsługiwane środowiska

Zestaw SDK Firebase JavaScript jest oficjalnie obsługiwany w następujących środowiskach.

Przeglądarki

Produkt Firebase Krawędź Firefoksa Chrom Safari na iOS Safari
Kontrola aplikacji
Analityka
Uwierzytelnianie
Chmura Firestore
(z wyjątkiem
trwałość)

(z wyjątkiem
trwałość
jeśli iOS <10)
Funkcje chmury
Instalacje Firebase
Wiadomości w chmurze
(Edge 17+, z wyjątkiem urządzeń mobilnych)
Magazyn w chmurze
Monitoring wydajności
Baza danych czasu rzeczywistego
Zdalna konfiguracja

Inne środowiska

Produkt Firebase Reaguj natywnie Node.js Chrom
Rozszerzenia
Kordoba
Kontrola aplikacji
(używanie niestandardowego dostawcy do przeprowadzania natywnego zaświadczania urządzeń)

(przy użyciu niestandardowego dostawcy )
Analityka
Uwierzytelnianie
(patrz Uwaga )

(patrz Uwaga )

(patrz Uwaga )

(patrz Uwaga )
Chmura Firestore
(z wyjątkiem
trwałość)

(z wyjątkiem
trwałość)
Funkcje chmury
Instalacje Firebase
Wiadomości w chmurze
Magazyn w chmurze
(z wyjątkiem
przesłane)
Monitoring wydajności
Baza danych czasu rzeczywistego
Zdalna konfiguracja

Polifilly

Zestaw SDK Firebase JavaScript jest zbudowany w oparciu o najnowsze standardy platformy internetowej. Niektóre starsze przeglądarki i środowiska JavaScript nie obsługują wszystkich funkcji wymaganych przez Firebase. Jeśli musisz obsługiwać te przeglądarki/środowiska, musisz odpowiednio załadować wypełnienia.

W poniższych sekcjach opisano większość wypełniaczy, których możesz potrzebować.

Wymagane wypełnienia

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

Opcjonalne wypełnienia

Środowiska Polifilly Produkty Firebase
  • Węzeł
  • Safari < 10.1
  • iOS < 10.3
aportować
  • Funkcje chmury
  • Monitoring wydajności
  • Reaguj Native i Expo
podstawa-64
  • Magazyn w chmurze

Sugerowane wypełnienia

Polifilly Licencja
Stabilny ES MIT
aportować MIT
podstawa-64 MIT

Wymagana konfiguracja Polyfill dla React Native i Expo

W przypadku React Native i Expo, jeśli przesyłasz ciąg zakodowany w formacie Base-64, musisz wykonać następujące czynności:

Zainstaluj base-64 z npm:

npm install base-64

Zaimportuj decode z base-64 i dołącz je do zakresu globalnego jako atob , aby Cloud Storage mógł uzyskać do niego dostęp.

import { decode } from 'base-64';

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

Dodaj wypełnienia do swojej aplikacji

Opcja 1 : (Zalecana) Użyj pakietu zintegrowanego z Babel

Jeśli używasz pakietu, zintegruj z Babel i @babel/preset-env, aby uzyskać wypełnienia.

Skorzystaj z interaktywnego przewodnika konfiguracji Babel, aby dowiedzieć się, jak zintegrować Babel z pakietem.

Dzięki Babel nie musisz martwić się o to, jakie wypełnienia należy uwzględnić. Zamiast tego określasz minimalne środowiska przeglądarki, które musisz obsługiwać. Następnie Babel dodaje dla Ciebie niezbędne wypełnienia. Babel gwarantuje, że Twoje wymagania dotyczące obsługi przeglądarki będą zawsze spełnione, nawet jeśli Firebase lub Twój własny kod zacznie korzystać z nowych funkcji ES.

@babel/preset-env zawiera szczegółowe informacje na temat dostępnych opcji konfiguracyjnych dotyczących określania celów środowiskowych (opcja targets ) i dodawania polifillów (opcja useBuiltIns ).

Opcja 2 : (Niezalecana) Dodaj wypełnienia ręcznie

Możesz dodawać wypełnienia ręcznie, korzystając ze swoich ulubionych bibliotek wypełniaczy (na przykład core-js ).

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

core-js udostępnia także uniwersalny plik Polyfill , który można bezpośrednio umieścić na stronie HTML.

Ta opcja może być wygodnym sposobem zarządzania wypełnieniami, jeśli nie używasz Babel. Nie zalecamy jednak tej kompleksowej opcji w przypadku aplikacji produkcyjnych, ponieważ prawdopodobnie będzie zawierać niepotrzebne wypełnienia, co zwiększa wagę strony, a tym samym czas ładowania strony.