Vai alla console

支持 Firebase JavaScript SDK 的环境

受支持的环境

以下环境正式支持 Firebase JavaScript SDK。

浏览器

Firebase 产品 IE11 Edge Firefox Chrome iOS 版 Safari Safari
Analytics(分析)
身份验证
Cloud Firestore
(持久性存储
除外)

(持久性存储
除外)

(如果 iOS 版本低于 10,
则持久性存储
除外)
Cloud Functions
云消息传递
(Edge 17 及更高版本)
Cloud Storage
性能监控
实时数据库
远程配置

其他环境

Firebase 产品 React Native Node.js Chrome
扩展程序
Cordova
Analytics(分析)
身份验证
(请参阅备注

(请参阅备注

(请参阅备注

(请参阅备注
Cloud Firestore
(持久性存储
除外)

(持久性存储
除外)
Cloud Functions
云消息传递
Cloud Storage
(上传
除外)
性能监控
实时数据库
远程配置

Polyfill

Firebase JavaScript SDK 基于 Web 平台的最新标准构建。某些较旧的浏览器和 JavaScript 环境不支持 Firebase 所需的所有功能。如果您必须支持这些浏览器/环境,则需要相应地加载 Polyfill。

以下部分指明了您可能需要的大部分 Polyfill。

必需的 Polyfill

环境 Polyfill
IE 11 ES Stable
Safari 7、8、9 ES Stable
Node(低于 6.5 的版本) ES Stable

可选的 Polyfill

环境 Polyfill Firebase 产品
  • IE 11
  • Node
  • Safari(低于 10.1 的版本)
  • iOS(低于 10.3 的版本)
提取
  • Cloud Functions
  • 性能监控

建议的 polyfill

Polyfill 许可
ES Stable MIT
提取 MIT

在您的应用中添加 Polyfill

方式 1:(推荐)使用与 Babel 集成的捆绑器

如果您使用捆绑器,请将其与 Babel@babel/preset-env 集成以获取 Polyfill。

请使用 Babel 的交互式设置指南了解如何将 Babel 与您的捆绑器集成。

使用 Babel,您无需担心到底要包含哪些 Polyfill。您只需指定自己需要支持的最低要求的浏览器环境,然后 Babel 就会为您添加所需的 Polyfill。即使 Firebase 或您自己的代码开始使用新的 ES 功能,Babel 也能确保始终满足您对浏览器支持的要求。

@babel/preset-env 包含用于指定环境目标(选项 targets)和添加 Polyfill(选项 useBuiltIns)的可用配置选项的详细信息。

方式 2:(不推荐)手动添加 Polyfill

您可以使用喜欢的 Polyfill 库(例如 core-js)手动添加 Polyfill。

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

core-js 还提供了一个多合一 Polyfill 文件,您可以直接将其包含在 HTML 页面中。

如果您不使用 Babel,使用此文件可以便捷地管理 Polyfill。但是,我们不建议将此多合一文件用于生产应用,因为它可能包含不需要的 Polyfill,这会增加页面重量,因而增加页面加载时间。