สภาพแวดล้อมที่รองรับ
Firebase JavaScript SDK ได้รับการสนับสนุนอย่างเป็นทางการในสภาพแวดล้อมต่อไปนี้
เบราว์เซอร์
ผลิตภัณฑ์ Firebase | Edge | Firefox | Chrome | Safari บน iOS | Safari |
---|---|---|---|---|---|
การตรวจสอบแอป | |||||
ข้อมูลวิเคราะห์ | |||||
การตรวจสอบสิทธิ์ | |||||
Cloud Firestore | (ยกเว้น ความต่อเนื่อง) |
(ยกเว้น ความต่อเนื่อง หาก iOS < 10) |
|||
ฟังก์ชันระบบคลาวด์ | |||||
การติดตั้ง Firebase | |||||
การรับส่งข้อความในระบบคลาวด์ | (Edge 17+ ยกเว้นอุปกรณ์เคลื่อนที่) |
||||
พื้นที่เก็บข้อมูลระบบคลาวด์ | |||||
การตรวจสอบประสิทธิภาพ | |||||
ฐานข้อมูลเรียลไทม์ | |||||
การกำหนดค่าระยะไกล | |||||
Vertex AI สำหรับ Firebase |
สภาพแวดล้อมอื่นๆ
ผลิตภัณฑ์ Firebase | รีแอ็กชันเนทีฟ | Node.js | ส่วนขยาย Chrome |
คอร์โดวา |
---|---|---|---|---|
การตรวจสอบแอป | (การใช้ผู้ให้บริการที่กำหนดเองเพื่อสร้างเอกสารรับรองอุปกรณ์เนทีฟ) |
(ใช้ผู้ให้บริการที่กำหนดเอง) |
||
ข้อมูลวิเคราะห์ | ||||
การตรวจสอบสิทธิ์ | (ดูหมายเหตุ) |
(ดูหมายเหตุ) |
(ดูหมายเหตุ) |
(ดูหมายเหตุ) |
Cloud Firestore | (ยกเว้น ความต่อเนื่อง) |
(ยกเว้น ความต่อเนื่อง) |
||
ฟังก์ชันระบบคลาวด์ | ||||
การติดตั้ง Firebase | ||||
การรับส่งข้อความในระบบคลาวด์ | ||||
พื้นที่เก็บข้อมูลระบบคลาวด์ | (ยกเว้น การอัปโหลด) |
|||
การตรวจสอบประสิทธิภาพ | ||||
ฐานข้อมูลเรียลไทม์ | ||||
การกำหนดค่าระยะไกล | ||||
Vertex AI สำหรับ Firebase |
โพลีฟิล
Firebase JavaScript SDK สร้างขึ้นตามมาตรฐานล่าสุดของแพลตฟอร์มเว็บ เบราว์เซอร์รุ่นเก่าและสภาพแวดล้อม JavaScript บางตัวไม่รองรับฟีเจอร์ทั้งหมดที่ Firebase จำเป็นต้องใช้ หากต้องรองรับเบราว์เซอร์/สภาพแวดล้อมเหล่านี้ คุณต้องโหลด Polyfill ให้สอดคล้องกัน
ส่วนด้านล่างระบุโพลีฟิลส่วนใหญ่ที่คุณอาจต้องใช้
โพลีฟิลล์ที่จำเป็น
สภาพแวดล้อม | โพลีฟิลล์ |
---|---|
Safari 7 และ 8 และ 9 | เสถียรสเปน |
โหนด < 6.5 | เสถียรสเปน |
โพลีฟิลล์ที่ไม่บังคับ
สภาพแวดล้อม | โพลีฟิลล์ | ผลิตภัณฑ์ Firebase |
---|---|---|
|
ดึงข้อมูล |
|
|
ฐาน 64 |
|
โพลีฟิลล์ที่แนะนำ
โพลีฟิลล์ | ใบอนุญาต |
---|---|
เสถียรแบบสเปน | MIT |
ดึงข้อมูล | MIT |
ฐาน 64 | MIT |
การตั้งค่า Polyfill ที่จำเป็นสำหรับ React Native และ Expo
สําหรับ React Native และ Expo หากอัปโหลดสตริงที่เข้ารหัสแบบ Base64 คุณจะต้องทําดังนี้
ติดตั้ง base-64 จาก npm ด้วยคำสั่งต่อไปนี้
npm install base-64
นำเข้า decode
จาก base-64
และต่อเชื่อมกับขอบเขตส่วนกลางเป็น atob
เพื่อให้ Cloud Storage เข้าถึงได้
import { decode } from 'base-64';
if(typeof atob === 'undefined') {
global.atob = decode;
}
เพิ่ม Polyfill ในแอปพลิเคชัน
ตัวเลือกที่ 1: (แนะนำ) ใช้ Bundler ที่ผสานรวมกับ Babel
หากคุณใช้ Bundler ให้ผสานรวมกับ Babel และ @babel/preset-env เพื่อรับ Polyfill
ใช้คู่มือการตั้งค่าแบบอินเทอร์แอกทีฟของ Babel เพื่อดูวิธีผสานรวม Babel เข้ากับ Bundler
เมื่อใช้ Babel คุณไม่ต้องกังวลเรื่องโพลีฟิลที่ต้องรวมไว้ แต่คุณจะระบุสภาพแวดล้อมของเบราว์เซอร์ขั้นต่ำที่คุณต้องการรองรับแทน จากนั้น Babel จะเพิ่มโพลีฟิลที่จำเป็นสำหรับคุณ Babel มั่นใจว่าข้อกำหนดสำหรับการรองรับเบราว์เซอร์เป็นไปตามข้อกำหนดเสมอ แม้ว่า Firebase หรือโค้ดของคุณเองจะเริ่มใช้ฟีเจอร์ ES ใหม่ก็ตาม
@babel/preset-env มีข้อมูลโดยละเอียดเกี่ยวกับตัวเลือกการกำหนดค่าที่มีอยู่สำหรับการระบุเป้าหมายสภาพแวดล้อม (ตัวเลือก targets
) และการเพิ่ม Polyfill (ตัวเลือก useBuiltIns
)
ตัวเลือกที่ 2: (ไม่แนะนำ) เพิ่ม Polyfill ด้วยตนเอง
คุณเพิ่ม Polyfill ด้วยตนเองได้โดยใช้ไลบรารี Polyfill ที่ชื่นชอบ (เช่น core-js
)
import 'core-js/stable'
import 'cross-fetch/polyfill';
core-js
ยังมีไฟล์ Polyfill แบบออลอินวันที่คุณนำไปใส่ไว้ในหน้า HTML ได้โดยตรง
ตัวเลือกนี้เป็นวิธีที่สะดวกในการจัดการโพลีฟิลล์ หากคุณไม่ได้ใช้ Babel อย่างไรก็ตาม เราไม่แนะนำให้มีตัวเลือกแบบครบวงจรนี้สำหรับแอปเวอร์ชันที่ใช้งานจริง เนื่องจากมักมี Polyfill ที่ไม่จำเป็น ซึ่งจะเพิ่มน้ำหนักหน้าเว็บ และส่งผลให้หน้าเว็บโหลดเร็วขึ้น