Môi trường được hỗ trợ
SDK JavaScript Firebase được hỗ trợ chính thức trong các môi trường sau.
trình duyệt
sản phẩm căn cứ hỏa lực | Bờ rìa | firefox | Trình duyệt Chrome | trình duyệt iOS | Cuộc đi săn |
---|---|---|---|---|---|
Kiểm tra ứng dụng | |||||
phân tích | |||||
xác thực | |||||
Cửa hàng lửa trên đám mây | (ngoại trừ kiên trì) | (ngoại trừ kiên trì nếu iOS <10) | |||
Chức năng đám mây | |||||
cài đặt căn cứ hỏa lực | |||||
Nhắn tin qua đám mây | (Edge 17+, ngoại trừ điện thoại di động) | ||||
Lưu trữ đám mây | |||||
Giám sát hiệu suất | |||||
Cơ sở dữ liệu thời gian thực | |||||
Cấu hình từ xa |
Môi trường khác
sản phẩm căn cứ hỏa lực | Phản ứng tự nhiên | Node.js | Trình duyệt Chrome Tiện ích mở rộng | Cordova |
---|---|---|---|---|
Kiểm tra ứng dụng | (sử dụng nhà cung cấp tùy chỉnh để chứng thực thiết bị gốc) | (sử dụng nhà cung cấp tùy chỉnh ) | ||
phân tích | ||||
xác thực | (xem Ghi chú ) | (xem Ghi chú ) | (xem Ghi chú ) | (xem Ghi chú ) |
Cửa hàng lửa trên đám mây | (ngoại trừ kiên trì) | (ngoại trừ kiên trì) | ||
Chức năng đám mây | ||||
cài đặt căn cứ hỏa lực | ||||
Nhắn tin qua đám mây | ||||
Lưu trữ đám mây | (ngoại trừ tải lên) | |||
Giám sát hiệu suất | ||||
Cơ sở dữ liệu thời gian thực | ||||
Cấu hình từ xa |
polyfill
SDK JavaScript Firebase được xây dựng dựa trên các tiêu chuẩn mới nhất của nền tảng web. Một số trình duyệt và môi trường JavaScript cũ hơn không hỗ trợ tất cả các tính năng mà Firebase yêu cầu. Nếu bạn phải hỗ trợ các trình duyệt/môi trường này, thì bạn cần tải các polyfill tương ứng.
Các phần bên dưới xác định hầu hết các polyfill mà bạn có thể cần.
polyfill bắt buộc
môi trường | polyfill |
---|---|
Safari 7 & 8 & 9 | ES ổn định |
Nút < 6,5 | ES ổn định |
polyfill tùy chọn
môi trường | polyfill | sản phẩm căn cứ hỏa lực |
---|---|---|
| tìm về |
|
| cơ sở-64 |
|
Polyfill được đề xuất
polyfill | Giấy phép |
---|---|
ES ổn định | MIT |
tìm về | MIT |
cơ sở-64 | MIT |
Thiết lập Polyfill cần thiết cho React Native và Expo
Đối với React Native và Expo nếu bạn đang tải lên chuỗi mã hóa base-64, bạn cần thực hiện như sau:
Cài đặt cơ sở-64 từ npm:
npm install base-64
Nhập decode
từ base-64
và đính kèm nó vào phạm vi toàn cầu dưới dạng atob
để Cloud Storage có thể truy cập nó.
import { decode } from 'base-64';
if(typeof atob === 'undefined') {
global.atob = decode;
}
Thêm polyfill vào ứng dụng của bạn
Tùy chọn 1 : (Được khuyến nghị) Sử dụng gói được tích hợp với Babel
Nếu bạn đang sử dụng một gói, hãy tích hợp với Babel và @babel/preset-env để nhận các polyfill.
Sử dụng hướng dẫn thiết lập tương tác của Babel để tìm hiểu cách tích hợp Babel với gói của bạn.
Với Babel, bạn không cần phải lo lắng về các polyfill chính xác cần đưa vào. Thay vào đó, bạn chỉ định môi trường trình duyệt tối thiểu mà bạn cần hỗ trợ. Babel sau đó thêm các polyfill cần thiết cho bạn. Babel đảm bảo rằng các yêu cầu của bạn về hỗ trợ trình duyệt luôn được đáp ứng, ngay cả khi Firebase hoặc mã của riêng bạn bắt đầu sử dụng các tính năng ES mới.
@babel/preset-env có thông tin chi tiết về các tùy chọn cấu hình có sẵn để chỉ định mục tiêu môi trường ( targets
tùy chọn) và thêm các polyfill (tùy chọn useBuiltIns
).
Tùy chọn 2 : (Không được đề xuất) Thêm polyfill theo cách thủ công
Bạn có thể thêm các polyfill theo cách thủ công bằng các thư viện polyfill yêu thích của mình (ví dụ: core-js
).
import 'core-js/stable'
import 'cross-fetch/polyfill';
core-js
cũng cung cấp tệp polyfill tất cả trong một mà bạn có thể đưa trực tiếp vào trang HTML.
Tùy chọn này có thể là một cách thuận tiện để quản lý các polyfill nếu bạn không sử dụng Babel. Tuy nhiên, chúng tôi không khuyến nghị tùy chọn tất cả trong một này cho các ứng dụng sản xuất vì tùy chọn này có thể sẽ bao gồm các polyfill không cần thiết, làm tăng trọng lượng trang và do đó làm tăng thời gian tải trang.