受支持的环境
以下环境正式支持 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 产品 |
---|---|---|
|
提取 |
|
建议的 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,这会增加页面重量,因而增加页面加载时间。