Entornos compatibles con el SDK de JavaScript de Firebase

Entornos admitidos

El SDK de JavaScript de Firebase es oficialmente compatible con los siguientes entornos.

navegadores

producto base de fuego Borde Firefox Cromo iOSSafari Safari
Analítica
Autenticación
Tienda de fuego en la nube
(excepto
persistencia)

(excepto
persistencia
si iOS < 10)
Funciones en la nube
Mensajería en la nube
(Edge 17+, excepto móvil)
Almacenamiento en la nube
Supervisión del rendimiento
Base de datos en tiempo real
Configuración remota

Otros entornos

producto base de fuego reaccionar nativo Nodo.js Cromo
Extensiones
Córdoba
Analítica
Autenticación
(ver nota )

(ver nota )

(ver nota )

(ver nota )
Tienda de fuego en la nube
(excepto
persistencia)

(excepto
persistencia)
Funciones en la nube
Mensajería en la nube
Almacenamiento en la nube
(excepto
cargas)
Supervisión del rendimiento
Base de datos en tiempo real
Configuración remota

polirellenos

El SDK de JavaScript de Firebase se basa en los últimos estándares de la plataforma web. Algunos navegadores antiguos y entornos de JavaScript no son compatibles con todas las funciones que requiere Firebase. Si debe admitir estos navegadores/entornos, debe cargar los polyfills en consecuencia.

Las siguientes secciones identifican la mayoría de los polyfills que podría necesitar.

Polyfills requeridos

Entornos polirellenos
Safari 7 y 8 y 9 ES estable
Nodo < 6.5 ES estable

Rellenos de polietileno opcionales

Entornos polirellenos Productos de base de fuego
  • Nodo
  • Safari < 10.1
  • iOS < 10.3
buscar
  • Funciones en la nube
  • Supervisión del rendimiento

Polyfills sugeridos

polirellenos Licencia
ES estable MIT
buscar MIT

Agregue polyfills en su aplicación

Opción 1 : (Recomendado) Usar el paquete integrado con Babel

Si está utilizando un paquete, intégrelo con Babel y @babel/preset-env para obtener polyfills.

Utilice la guía de configuración interactiva de Babel para aprender a integrar Babel con su paquete.

Con Babel, no necesita preocuparse por los polyfills exactos que debe incluir. En su lugar, especifica los entornos de navegador mínimos que necesita admitir. Babel luego agrega los polyfills necesarios para usted. Babel garantiza que siempre se cumplan sus requisitos de compatibilidad con el navegador, incluso si Firebase o su propio código comienzan a usar las nuevas funciones de ES.

@babel/preset-env tiene información detallada sobre las opciones de configuración disponibles para especificar objetivos de entorno (opción de targets ) y agregar polyfills (opción useBuiltIns ).

Opción 2 : (No recomendada) Agregar polyfills manualmente

Puede agregar polyfills manualmente usando sus bibliotecas de polyfill favoritas (por ejemplo, core-js ).

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

core-js también proporciona un archivo polyfill todo en uno que puede incluir directamente en la página HTML.

Esta opción puede ser una forma conveniente de administrar polyfills si no usa Babel. Sin embargo, no recomendamos esta opción todo en uno para las aplicaciones de producción , ya que probablemente incluirá rellenos polifónicos innecesarios, lo que aumenta el peso de la página y, por lo tanto, el tiempo de carga de la página.