Obsługiwane środowiska pakietu SDK Firebase JavaScript

Obsługiwane środowiska

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

Przeglądarki

Usługa Firebase Edge Firefox Chrome, Safari na iOS Safari
Sprawdzanie aplikacji
Analytics
Uwierzytelnianie
Cloud Firestore
(z wyjątkiem
trwałości)

(z wyjątkiem
trwałości
w przypadku iOS < 10)
Funkcje Cloud
Instalacje Firebase
Komunikacja w chmurze
(Edge 17+, oprócz urządzeń mobilnych)
Cloud Storage,
Monitorowanie wydajności
Baza danych czasu rzeczywistego
Zdalna konfiguracja
Vertex AI dla Firebase

Inne środowiska

Usługa Firebase Reakcja natywna Node.js Rozszerzenia
Chrome
Kordowa
Sprawdzanie aplikacji
(używając dostawcy niestandardowego do atestu urządzenia natywnego)

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

(zobacz uwagę).

(zobacz uwagę).

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

(z wyjątkiem
trwałości)
Funkcje Cloud
Instalacje Firebase
Komunikacja w chmurze
Cloud Storage,
(z wyjątkiem
przesłanych)
Monitorowanie wydajności
Baza danych czasu rzeczywistego
Zdalna konfiguracja
Vertex AI dla Firebase

Polyfill

Pakiet SDK Firebase JavaScript 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 lub środowiska, musisz odpowiednio wczytać elementy polyfill.

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

Wymagane elementy polyfill

Środowiska Polyfill
Safari 7, 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
  • Monitorowanie wydajności
  • React Native i Expo
base-64
  • Cloud Storage

Sugerowane elementy polyfill

Polyfill Licencja
Stabilny ES 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 umożliwić Cloud Storage dostęp do niego.

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 Babel i @babel/preset-env, aby uzyskać kod polyfill.

Skorzystaj z interaktywnego przewodnika konfiguracji Babel, aby dowiedzieć się, jak zintegrować Babel z Twoim 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 dba o to, aby wymagania dotyczące obsługi przeglądarek były zawsze spełnione, nawet jeśli Firebase lub Twój kod zaczną korzystać z nowych funkcji ES.

@babel/preset-env zawiera szczegółowe informacje o dostępnych opcjach konfiguracji służących do określania celów środowisk (opcja targets) i dodawania elementów polyfill (opcja useBuiltIns).

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

Elementy polyfill możesz dodawać ręcznie, używając ulubionych bibliotek polyfill (np. core-js).

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

core-js udostępnia też wszechstronny plik polyfill, który możesz umieścić bezpośrednio na stronie HTML.

Ta opcja może być wygodnym sposobem zarządzania kodami polyfill, jeśli nie korzystasz z Babel. Jednak nie zalecamy tego kompleksowego rozwiązania w przypadku aplikacji produkcyjnych, ponieważ prawdopodobnie zawiera ono niepotrzebne elementy polyfill, które zwiększają wagę strony, a tym samym jej czas wczytywania.