Obsługiwane środowiska dla pakietu Firebase JavaScript SDK

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

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
  • Węzeł
  • Safari <10,1
  • iOS <10,3
aportować
  • Funkcje chmury
  • Monitoring wydajności
  • React Native i Expo
podstawa-64
  • Magazyn w chmurze

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.