Obsługiwane środowiska
Pakiet Firebase JavaScript SDK jest oficjalnie obsługiwany w następujących środowiskach.
Przeglądarki
Produkt Firebase | Brzeg | Firefox | Chrom | Safari na iOS | Safari |
---|---|---|---|---|---|
Analityka | |||||
Uwierzytelnianie | |||||
Cloud Firestore | (oprócz trwałość) | (oprócz trwałość jeśli iOS < 10) | |||
Funkcje chmury | |||||
Instalacje Firebase | |||||
Wiadomości w chmurze | (Ekran 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 | Kordowa |
---|---|---|---|---|
Analityka | ||||
Uwierzytelnianie | (patrz Uwaga ) | (patrz Uwaga ) | (patrz Uwaga ) | (patrz Uwaga ) |
Cloud Firestore | (oprócz trwałość) | (oprócz trwałość) | ||
Funkcje chmury | ||||
Instalacje Firebase | ||||
Wiadomości w chmurze | ||||
Magazyn w chmurze | (oprócz przesłane) | |||
Monitoring wydajności | ||||
Baza danych czasu rzeczywistego | ||||
Zdalna konfiguracja |
Wypełnienia
Pakiet Firebase JavaScript SDK jest oparty na najnowszych standardach 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łnienie.
Poniższe sekcje identyfikują większość wypełniaczy, których możesz potrzebować.
Wymagane wypełniacze
Środowiska | Wypełnienia |
---|---|
Safari 7, 8 i 9 | ES stabilny |
Węzeł <6,5 | ES stabilny |
Opcjonalne wypełnienia
Środowiska | Wypełnienia | Produkty Firebase |
---|---|---|
| aportować |
|
| podstawa-64 |
|
Sugerowane wypełnienia
Wypełnienia | Licencja |
---|---|
ES stabilny | 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 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 go do zakresu globalnego jako atob
, aby Cloud Storage miał do niego dostęp.
import { decode } from 'base-64';
if(typeof atob === 'undefined') {
global.atob = decode;
}
Dodaj wypełniacze w swojej aplikacji
Opcja 1 : (Zalecane) Użyj bundlera zintegrowanego z Babel
Jeśli używasz bundlera, zintegruj się 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 się martwić o dokładne wypełnienie. Zamiast tego określasz minimalne środowiska przeglądarki, które musisz obsługiwać. Babel następnie doda dla Ciebie niezbędne wypełnienia. Babel zapewnia, że Twoje wymagania dotyczące obsługi przeglądarek są 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 o dostępnych opcjach konfiguracyjnych do określania celów środowiskowych (opcja targets
) i dodawania wypełnień (opcja useBuiltIns
).
Opcja 2 : (Niezalecane) Dodaj wypełnienie ręcznie
Możesz dodać wypełnienie ręcznie, używając swoich ulubionych bibliotek wypełnienia (na przykład core-js
).
import 'core-js/stable'
import 'cross-fetch/polyfill';
core-js
zapewnia również plik wypełniania all-in-one , który można umieścić bezpośrednio na stronie HTML.
Ta opcja może być wygodnym sposobem zarządzania wypełniaczami, jeśli nie używasz Babel. Nie zalecamy jednak tej kompleksowej opcji w przypadku aplikacji produkcyjnych , ponieważ prawdopodobnie będzie ona zawierać niepotrzebne wypełniacze, co zwiększa wagę strony, a tym samym czas ładowania strony.