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 |
---|---|---|
| aportować |
|
| podstawa-64 |
|
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.