סביבות נתמכות
ה-SDK של Firebase JavaScript נתמך רשמית בסביבות הבאות.
דפדפנים
מוצר Firebase | קָצֶה | פיירפוקס | כרום | iOS Safari | ספארי |
---|---|---|---|---|---|
בדיקת אפליקציה | |||||
ניתוח | |||||
אימות | |||||
Cloud Firestore | (מלבד הַתמָדָה) | (מלבד הַתמָדָה אם iOS < 10) | |||
פונקציות ענן | |||||
התקנות Firebase | |||||
העברת הודעות בענן | (Edge 17+, למעט נייד) | ||||
אחסון בענן | |||||
ניטור ביצועים | |||||
מסד נתונים בזמן אמת | |||||
תצורה מרחוק |
סביבות אחרות
מוצר Firebase | תגובה יליד | Node.js | כרום הרחבות | קורדובה |
---|---|---|---|---|
בדיקת אפליקציה | (שימוש בספק מותאם אישית כדי לבצע אישור מכשיר מקורי) | (באמצעות ספק מותאם אישית ) | ||
ניתוח | ||||
אימות | (ראה הערה ) | (ראה הערה ) | (ראה הערה ) | (ראה הערה ) |
Cloud Firestore | (מלבד הַתמָדָה) | (מלבד הַתמָדָה) | ||
פונקציות ענן | ||||
התקנות Firebase | ||||
העברת הודעות בענן | ||||
אחסון בענן | (מלבד העלאות) | |||
ניטור ביצועים | ||||
מסד נתונים בזמן אמת | ||||
תצורה מרחוק |
Polyfills
Firebase JavaScript SDK בנוי על הסטנדרטים העדכניים ביותר של פלטפורמת האינטרנט. חלק מדפדפנים וסביבות JavaScript ישנות יותר אינם תומכים בכל התכונות הנדרשות על-ידי Firebase. אם אתה חייב לתמוך בדפדפנים/סביבות אלה, עליך לטעון polyfills בהתאם.
הסעיפים שלהלן מזהים את רוב הפוליפילים שאולי תזדקק להם.
פוליפילים נדרשים
סביבות | Polyfills |
---|---|
ספארי 7 ו-8 ו-9 | ES יציב |
צומת < 6.5 | ES יציב |
פוליפילים אופציונליים
סביבות | Polyfills | מוצרי Firebase |
---|---|---|
| לְהָבִיא |
|
| בסיס-64 |
|
פוליפילים מוצעים
Polyfills | רישיון |
---|---|
ES יציב | MIT |
לְהָבִיא | MIT |
בסיס-64 | MIT |
הגדרת Polyfill נדרשת עבור React Native ו-Expo
עבור React Native ו-Expo אם אתה מעלה מחרוזת מקודדת בסיס 64, עליך לבצע את הפעולות הבאות:
התקן את 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;
}
הוסף polyfills ביישום שלך
אפשרות 1 : (מומלץ) השתמש ב-Bundler המשולב עם Babel
אם אתה משתמש ב-bundler, שלב עם Babel ו- @babel/preset-env כדי לקבל polyfills.
השתמש במדריך ההגדרה האינטראקטיבי של Babel כדי ללמוד כיצד לשלב את Babel עם המצרף שלך.
עם Babel, אתה לא צריך לדאוג לגבי הפוליפילים המדויקים שיש לכלול. במקום זאת, אתה מציין את סביבות הדפדפן המינימליות שאתה צריך לתמוך בהן. לאחר מכן, בבל מוסיפה עבורך את הפוליפילים הדרושים. Babel מבטיחה שהדרישות שלך לתמיכה בדפדפן תמיד מתקיימות, גם אם Firebase או קוד משלך מתחילים להשתמש בתכונות ES חדשות.
ל-@babel/preset-env יש מידע מפורט על אפשרויות התצורה הזמינות לציון יעדי סביבה (option targets
) והוספת polyfills (אפשרות useBuiltIns
).
אפשרות 2 : (לא מומלץ) הוסף polyfills באופן ידני
אתה יכול להוסיף polyfills באופן ידני באמצעות ספריות polyfill המועדפות עליך (לדוגמה, core-js
).
import 'core-js/stable'
import 'cross-fetch/polyfill';
core-js
מספק גם קובץ polyfill הכל-באחד שתוכל לכלול ישירות בדף ה-HTML.
אפשרות זו יכולה להיות דרך נוחה לניהול polyfills אם אינך משתמש ב-Babel. עם זאת, איננו ממליצים על אפשרות ה-All-in-One הזו עבור אפליקציות ייצור, מכיוון שהיא ככל הנראה תכלול פולימילוי מיותרים, מה שמגדיל את משקל העמוד ומכאן את זמן טעינת העמוד.