يوفّر مكوّن الويب Google Picker طريقة إضافية لدمج Google Picker API في تطبيقات الويب.
يبسّط مكوّن الويب عملية دمج ميزة اختيار ملفات Google Drive في تطبيقات الويب. وهو يغلّف كل منطق تحميل واجهة برمجة التطبيقات والمصادقة الأساسي في عنصر HTML واحد. ويتيح لك إدراج علامة <drive-picker> مباشرةً في
الرمز بدون الحاجة إلى كتابة منطق تحميل gapi. يمكن استخدامه في HTML وJavaScript العاديَين، كما أنّه لا يعتمد على أي إطار عمل، ويعمل بسلاسة مع Svelte وVue وAngular وغير ذلك.
لمزيد من المعلومات عن مكتبة مكوّنات الويب، يُرجى الاطّلاع على
@googleworkspace/drive-picker-element.
بالنسبة إلى تطبيقات React، استخدِم حزمة غلاف React الرسمية لمكوّن الويب:
@googleworkspace/drive-picker-react.
الميزات الرئيسية
- عملية دمج بسيطة: يمكنك إضافة Google Picker إلى تطبيقات الويب باستخدام بضعة أسطر من الرمز.
- لا يعتمد على أي إطار عمل: يعمل بسلاسة مع أي إطار عمل ويب تختاره (React أو Vue أو Angular أو غير ذلك).
- مفتوح المصدر وقابل للتخصيص: الرمز متاح مجانًا ويمكنك تخصيصه ليناسب احتياجاتك المحدّدة.
- توافق سلس مع OAuth: يتم التعامل مع مصادقة المستخدم تلقائيًا، ما يوفّر تجربة سلسة للمستخدم.
- طرق عرض قابلة للتخصيص: يمكنك ضبط Google Picker لعرض أنواع الملفات أو طرق العرض التي تحتاج إليها فقط من خلال ضبط السمات.
البدء
ثبِّت المكوّن باستخدام NPM أو ما شابه:
npm i @googleworkspace/drive-picker-elementيتوفّر أيضًا إصدار CDN. للاطّلاع على التنسيقات والإصدارات المتاحة، يُرجى الانتقال إلى
unpkg.<script src="https://unpkg.com/@googleworkspace/drive-picker-element@latest/dist/index.iife.min.js"></script>استورِد مكوّنات
@googleworkspace/drive-picker-elementفي ملف JavaScript:import "@googleworkspace/drive-picker-element";لا يكون الاستيراد مطلوبًا إذا كنت تستخدم إصدار CDN لأنّه يحمّل تلقائيًا مكتبة Google Picker ومكتبة عميل Google API المستخدَمة للمصادقة.
أضِف العناصر المخصّصة إلى ملف HTML:
<drive-picker> <drive-picker-docs-view></drive-picker-docs-view> </drive-picker>للاطّلاع على سمات وخصائص
<drive-picker/>و<drive-picker-docs-view/>، يُرجى الرجوع إلى المستندات المرجعية الخاصة بـ@googleworkspace/drive-picker-element.
الفعاليات
يرسل العنصر <drive-picker/> الأحداث المخصّصة التالية:
| الحدث | الوصف |
|---|---|
picker-picked |
يتم تنشيطه عندما يختار المستخدم عنصرًا واحدًا أو أكثر. |
picker-canceled |
يتم تنشيطه عندما يلغي المستخدم عملية الاختيار من خلال النقر على الزر "إلغاء" أو إغلاق مربّع الحوار بدون إجراء أي اختيار. |
picker-error |
يتم تنشيطه عند حدوث خطأ أثناء عملية التهيئة أو اختيار الملف. |
لمزيد من المعلومات عن الأحداث، يُرجى الاطّلاع على
@googleworkspace/drive-picker-element
مستندات على NPM.
تفاصيل الحدث
بالنسبة إلى الحدث picker-picked، تحتوي تفاصيل الحدث على
Google Picker
ResponseObject الكامل.
{
"type": "picker-picked",
"detail": {
"action": "PICKED",
"docs": [
{
"id": ID,
"mimeType": "application/pdf",
"name": NAME,
"url": "https://drive.google.com/file/d/ID/view?usp=drive_web",
"sizeBytes": 12345
}
]
}
}
في ما يلي الخصائص الأكثر استخدامًا في عنصر الاستجابة:
action: الإجراء الذي أدى إلى تنشيط معاودة الاتصال (على سبيل المثال،PICKED).docs: مصفوفة منDocumentObjectالتي اختارها المستخدم. يحتوي كل عنصر على خصائص مثل:
بالنسبة إلى الحدث picker-error، يحتوي event.detail على عنصر خطأ أو سلسلة تصف المشكلة (على سبيل المثال، ERR_USER_NOT_AUTHENTICATED).
أمثلة
تعرض نماذج الرموز البرمجية التالية كيفية استخدام مكوّن الويب Google Picker لحالات الاستخدام الشائعة. لكل عينة تعليمات برمجية، استبدِل ما يلي:
PROMPT: قائمة بفواصل مسافات بينها، وهي حساسة لحالة الأحرف، وتتضمّن طلبات تفويض حساب Google التي سيتم عرضها للمستخدم. لمزيد من المعلومات، يُرجى الاطّلاع على
TokenClientConfig.prompt.ORIGIN: مَعلمة المصدر في أداة الاختيار. على سبيل المثال،
https://developers.google.com. لمزيد من المعلومات، يُرجى الاطّلاع علىPickerBuilder.setOriginطريقة.APP_ID: معرّف تطبيق Drive. لمزيد من المعلومات، يُرجى الاطّلاع على الـ
PickerBuilder.setAppIdطريقة.CLIENT_ID: معرّف عميل OAuth 2.0. لمزيد من المعلومات، يُرجى الاطّلاع على استخدام بروتوكول OAuth 2.0 للدخول إلى Google APIs.
ملفات PDF
يتم فلترة طريقة العرض لعرض ملفات PDF فقط باستخدام السمة mime-types.
<drive-picker
prompt="PROMPT"
origin="ORIGIN"
app-id="APP_ID"
client-id="CLIENT_ID"
>
<drive-picker-docs-view mime-types="application/pdf"></drive-picker-docs-view>
</drive-picker>
ملفات الصور والفيديو
يتم فلترة طريقة العرض لعرض ملفات الصور (JPEG وPNG) والفيديو (MP4 وQuickTime) فقط باستخدام السمة mime-types.
<drive-picker
prompt="PROMPT"
origin="ORIGIN"
app-id="APP_ID"
client-id="CLIENT_ID"
>
<drive-picker-docs-view mime-types="image/jpeg,image/png,video/mp4,video/quicktime"></drive-picker-docs-view>
</drive-picker>
الملفات التي أملكها
يتم فلترة طريقة العرض لعرض الملفات التي يملكها المستخدم الحالي فقط باستخدام السمة owned-by-me.
<drive-picker
prompt="PROMPT"
origin="ORIGIN"
app-id="APP_ID"
client-id="CLIENT_ID"
>
<drive-picker-docs-view owned-by-me="true"></drive-picker-docs-view>
</drive-picker>
طلب البحث عن الملفات التي ليس لها عنوان
يتم فلترة طريقة العرض لعرض الملفات التي تطابق طلب البحث "بلا عنوان" باستخدام السمة query.
<drive-picker
prompt="PROMPT"
origin="ORIGIN"
app-id="APP_ID"
client-id="CLIENT_ID"
>
<drive-picker-docs-view query="Untitled"></drive-picker-docs-view>
</drive-picker>
الملفات المميّزة بنجمة
يتم فلترة طريقة العرض لعرض الملفات المميّزة بنجمة فقط باستخدام السمة starred.
<drive-picker
prompt="PROMPT"
origin="ORIGIN"
app-id="APP_ID"
client-id="CLIENT_ID"
>
<drive-picker-docs-view starred="true"></drive-picker-docs-view>
</drive-picker>
مواضيع ذات صلة
- لمزيد من المعلومات التفصيلية عن السمات والأحداث والخصائص، يُرجى الاطّلاع على مستندات
drive-picker-elementالكاملة على GitHub.