عميل المشرف على REST ل Firebase.
npm install aor-firebase-client --save<Admin> // in src/App.js
import React from 'react' ;
import { Admin , Resource } from 'admin-on-rest' ;
import { RestClient } from 'aor-firebase-client' ;
const firebaseConfig = {
apiKey : '<your-api-key>' ,
authDomain : '<your-auth-domain>' ,
databaseURL : '<your-database-url>' ,
storageBucket : '<your-storage-bucket>' ,
messagingSenderId : '<your-sender-id>'
} ;
const clientOptions = {
timestampFieldNames : {
createdAt : 'createdAt' ,
updatedAt : 'updatedAt'
} ,
trackedResources : [ {
name : 'posts' , // The name reference to be used in all other places in AOR
path : 'blog' , // The path in the database. If missing will use the name
public : true ,
uploadFields : [ ] // The string name of the field
} , 'contacts' ] // A single string assumes path and name as equal, non private and without upload fields
}
const App = ( ) => (
< Admin restClient = { RestClient ( trackedResources , clientOptions ) } >
< Resource name = "posts" list = { PostList } />
< Resource name = "contacts" list = { ContactList } />
</ Admin >
) ;
export default App ; تتيح لك الحزمة إدارة عملية تسجيل الدخول/تسجيل الدخول لتنفيذ دعامة authClient اختيارية لمكون Admin (انظر الوثائق).
يخزن firebaseToken في localStorage . خيارات التكوين المتاحة هي:
userProfilePath : مسار قاعدة البيانات لملفات تعريف المستخدمين. الإعدادات الافتراضية إلى /users/ . مانع من القطع.
userAdminProp : مفتاح قاعدة البيانات للتوجيه إذا كان لدى المستخدم قوى المسؤول. الإعدادات الافتراضية إلى isAdmin
المسار النهائي هو: {userProfilePath}/{uid}/{userAdminProp}
localStorageTokenName : معرف التخزين المحلي لعقد رمز عميل Firebase ، الافتراضيات إلى aorFirebaseClientToken
handleAuthStateChange : طريقة لتجاوز عملية المصادقة
// in src/App.js
...
import { RestClient , AuthClient } from 'aor-firebase-client' ;
const firebaseConfig = {
apiKey : '<your-api-key>' ,
authDomain : '<your-auth-domain>' ,
databaseURL : '<your-database-url>' ,
storageBucket : '<your-storage-bucket>' ,
messagingSenderId : '<your-sender-id>'
} ;
const authConfig = {
userProfilePath : 'profiles' ,
userAdminProp : 'superuser'
}
const App = ( ) => (
< Admin restClient = { RestClient ( firebaseConfig ) } authClient = { AuthClient ( authConfig ) } >
< Resource name = "posts" list = { PostList } />
</ Admin >
) ;
export default App ;ملاحظة: يتطلب AuthClient استخدام RestClient من أجل تهيئة Firebase. بدلاً من ذلك ، يمكنك اختيار عدم استخدام RestClient وتهيئة Firebase بنفسك مثل هذا:
import { RestClient , AuthClient } from 'aor-firebase-client' ;
import firebase from 'firebase' ;
const firebaseConfig = {
apiKey : '<your-api-key>' ,
authDomain : '<your-auth-domain>' ,
databaseURL : '<your-database-url>' ,
storageBucket : '<your-storage-bucket>' ,
messagingSenderId : '<your-sender-id>'
} ;
firebase . initializeApp ( firebaseConfig ) ;
const App = ( ) => (
< Admin authClient = { AuthClient ( ) } >
< Resource name = "posts" list = { PostList } />
</ Admin >
) ;
export default App ; هذه المكتبة مرخصة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.