الفرق بين المراجعتين لصفحة: «ReactNative/components and apis»

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:المكونات والواجهات البرمجية في React Native}}</noinclude>
<noinclude>{{DISPLAYTITLE:المكونات والواجهات البرمجية في React Native}}</noinclude>
يوفر React Native عددًا من المكونات المضمنة. ستجد قائمة كاملة بالمكونات وواجهات برمجة التطبيقات على الصفحة الرئيسيّة للتوثيق. إذا لم تكن متأكدًا من أين تبدأ، فألقِ نظرة على الفئات التالية:
يوفر React Native عددًا من المكونات المضمنة، ستجد قائمة كاملة بالمكونات وواجهات برمجة التطبيقات على الصفحة الرئيسيّة للتوثيق، إذا لم تكن متأكدًا من أين تبدأ، فألقِ نظرة على الفئات آتية الذكر.<blockquote>مُجتمع React Native مجتمعٌ يضمّ آلاف المطورين، إذا كنت تبحث عن مكتبة تؤدّي مهمّة معينة فيمكنك ذلك من [[ReactNative/libraries#.D8.A7.D9.84.D8.A8.D8.AD.D8.AB .D8.B9.D9.86 .D9.85.D9.83.D8.AA.D8.A8.D8.A7.D8.AA|دليل إيجاد المكتبات]].</blockquote>


* [[ReactNative/components and apis#.D8.A7.D9.84.D9.85.D9.83.D9.88.D9.86.D8.A7.D8.AA .D8.A7.D9.84.D8.A3.D8.B3.D8.A7.D8.B3.D9.8A.D9.91.D8.A9|المكونات الأساسيّة]]
==المكونات الأساسية==
* [[ReactNative/components and apis#.D9.88.D8.A7.D8.AC.D9.87.D8.A9 .D8.A7.D9.84.D9.85.D8.B3.D8.AA.D8.AE.D8.AF.D9.85|واجهة المستخدم]]
* [[ReactNative/components and apis#.D8.B9.D8.B1.D9.88.D8.B6 .D8.A7.D9.84.D9.82.D9.88.D8.A7.D8.A6.D9.85|عروض القوائم]]
* [[ReactNative/components and apis#.D9.85.D9.8A.D9.91.D8.B2.D8.A7.D8.AA .D8.AE.D8.A7.D8.B5.D9.91.D8.A9 .D8.A8.D9.85.D9.86.D8.B5.D9.91.D8.A9 iOS|ميّزات خاصّة بمنصّة iOS]]
* [[ReactNative/components and apis#.D9.85.D9.8A.D9.91.D8.B2.D8.A7.D8.AA .D8.AE.D8.A7.D8.B5.D9.91.D8.A9 .D8.A8.D9.85.D9.86.D8.B5.D9.91.D8.A9 Android|ميّزات خاصّة بمنصّة Android]]
* [[ReactNative/components and apis#.D9.85.D9.8A.D9.91.D8.B2.D8.A7.D8.AA .D8.A3.D8.AE.D8.B1.D9.89|ميّزات أخرى]]
 
مُجتمع React Native مجتمعٌ يضمّ آلاف المطورين. إذا كنت تبحث عن مكتبة تؤدّي مهمّة معينة، فابحث على سجل npm للحزم التي تشير إلى [https://www.npmjs.com/search?q=react-native&page=1&ranking=optimal ‎<code>react-native</code>‎]، أو انظر مشروع [http://www.awesome-react-native.com/ Awesome React Native] الذي يوفّر قائمة منسّقة تحتوي على العديد من المكونات، والدروس، والأمثلة، ومواد أخرى..
 
==المكونات الأساسيّة==
تستخدم معظم التطبيقات أحد هذه المكونات الأساسية، ستحتاج إلى التعرف عليها لبناء تطبيقات React Native:
تستخدم معظم التطبيقات أحد هذه المكونات الأساسية، ستحتاج إلى التعرف عليها لبناء تطبيقات React Native:


سطر 19: سطر 10:
* ‎[[ReactNative/textinput|<code>TextInput</code>‎]]: مُكوّنٌ لإدخال النص في التطبيق عبر لوحة المفاتيح.
* ‎[[ReactNative/textinput|<code>TextInput</code>‎]]: مُكوّنٌ لإدخال النص في التطبيق عبر لوحة المفاتيح.
* ‎<code>[[ReactNative/scrollview|ScrollView]]</code>‎: يوفرُ حاوية تمرير يمكنها احتواء عدّة مكونات.
* ‎<code>[[ReactNative/scrollview|ScrollView]]</code>‎: يوفرُ حاوية تمرير يمكنها احتواء عدّة مكونات.
* ‎[[ReactNative/stylesheet|<code>StyleSheet</code>‎]]: يوفر طبقة تجريد مشابهة لأنماط CSS.
* ‎[[ReactNative/stylesheet|<code>StyleSheet</code>‎]]: يوفر طبقة تجريد مشابهة لأنماط [[CSS]].
==واجهة المستخدم==
==واجهة المستخدم==
* ‎[[ReactNative/button|<code>Button</code>‎]]: زر للتعامل مع اللمسات.
* ‎[[ReactNative/button|<code>Button</code>‎]]: زر للتعامل مع اللمسات التي تصيّر بشكلٍ جميلٍ في أيّ منصّة.
* ‎[[ReactNative/picker|<code>Picker</code>‎]]: يُصيِّر مكونَ الانتقاء الأصيلٍ على iOS و Android.
* ‎[[ReactNative/switch|<code>Switch</code>‎]]: يصير دخلًا ذا قيمة منطقيّة (boolean input).
* ‎[[ReactNative/slider|<code>Slider</code>‎]]: مكون يُستخدَم لتحديد قيمة واحدةٍ من بين مجموعة من القيم.
==القوائم==
* ‎[[ReactNative/switch|<code>Switch</code>‎]]: مُكوّن لإدخال قيمة منطقيّة (boolean input).
==عروض القوائم==
على النّقيض من مكوّن <code>[[ReactNative/scrollview|ScrollView]]</code> الأكثر عمومية، فالمُكوّنات التالية تعرض العناصر الظاهرة على الشاشة فقط. ما يجعلها مناسبة لعرض قوائم طويلة من البيانات.
على النّقيض من مكوّن <code>[[ReactNative/scrollview|ScrollView]]</code> الأكثر عمومية، فالمُكوّنات التالية تعرض العناصر الظاهرة على الشاشة فقط. ما يجعلها مناسبة لعرض قوائم طويلة من البيانات.


* ‎[[ReactNative/flatlist|<code>FlatList</code>‎]]: مكون لعرض قائمة قابلة للتمرير بطريقة فعّالة وأحسن أداءً.
* ‎[[ReactNative/flatlist|<code>FlatList</code>‎]]: لتصيير قائمة قابلة للتمرير بشكلٍ فعّالٍ.
* ‎[[ReactNative/sectionlist|<code>SectionList</code>‎]]: مشابه للمكوّن ‎<code>FlatList</code>‎ لكنّه يُستخدَم للقوائم المُقسَّمة إلى أقسام.
* ‎[[ReactNative/sectionlist|<code>SectionList</code>‎]]: يُستخدَم للقوائم المُقسَّمة.
==ميّزات خاصّة بمنصّة iOS==
 
توفر العديد من المكونات التالية أغلفةً لأصنافUIKit شائعة الاستخدام.
== ميزات خاصة بمنصة Android ==
توفر العديد من المكونات التالية أغلفةً لأصناف Android شائعة الاستخدام.
*[[ReactNative/backhandler|<code>BackHandler</code>‎]]: التعرّف على ضغط زر الجهاز الخاصّ بالتنقّل إلى الوراء.
*‎[[ReactNative/drawerlayoutandroid|<code>DrawerLayoutAndroid</code>‎]]: يُصيِّر واجهة ‎<code>DrawerLayout</code>‎.
* ‎<code>[[ReactNative/permissionsandroid|PermissionsAndroid]]</code>‎: يوفر الوصول إلى نموذج الصلاحيات الذي ظهر في نسخة Android M.
*‎[[ReactNative/toastandroid|<code>ToastAndroid</code>‎]]: إنشاء تنبيه Android Toast.
==ميزات خاصة بمنصة iOS==
توفر العديد من المكونات التالية أغلفةً لأصناف UIKit شائعة الاستخدام.
* ‎[[ReactNative/actionsheetios|<code>ActionSheetIOS</code>‎]]: واجهة برمجة تطبيقاتٍ (API) لعرض ورقة إجراءات في iOS أو ورقة مشاركة.
* ‎[[ReactNative/actionsheetios|<code>ActionSheetIOS</code>‎]]: واجهة برمجة تطبيقاتٍ (API) لعرض ورقة إجراءات في iOS أو ورقة مشاركة.
* ‎[[ReactNative/alertios|<code>AlertIOS</code>‎]]: إنشاء مربع حوار تنبيه iOS مع رسالة أو إنشاء محثّ (prompt) للحصول على مدخلات من المستخدم.
==ميزات أخرى==
* ‎[[ReactNative/datepickerios|<code>DatePickerIOS</code>‎]]: مكون لاختيار التاريخ والوقت على iOS.
* ‎[[ReactNative/imagepickerios|<code>ImagePickerIOS</code>‎]]: اختيار صورة.
* ‎[[ReactNative/navigatorios|<code>NavigatorIOS</code>‎]]: مكون تنقّل يُغلّف الصنف ‎<code>UINavigationController</code>‎.
* ‎[[ReactNative/progressviewios|<code>ProgressViewIOS</code>‎]]: يُصيِّر عرض ‎<code>UIProgressView</code>‎.
* ‎[[ReactNative/pushnotificationios|<code>PushNotificationIOS</code>‎]]: التعامل مع التنبيهات، ما يشمل الصلاحيات وعلامة عدد التنبيهات فوق الأيقونة.
* ‎[[ReactNative/segmentedcontrolios|<code>SegmentedControlIOS</code>‎]]: يُصيِّر عرض ‎<code>UISegmentedControl</code>‎.
* ‎[[ReactNative/tabbarios|<code>TabBarIOS</code>‎]]: يُصيِّر عرض ‎<code>UITabViewController</code>‎. استعمله مع ‎<code>TabBarIOS.Item</code>‎.
==ميّزات خاصّة بمنصّة Android ==
توفر العديد من المكونات التالية أغلفةً لأصنافAndroid شائعة الاستخدام.
* ‎[[ReactNative/backhandler|<code>BackHandler</code>‎]]: التعرّف على ضغطة زر الجهاز الخاصّ بالتنقّل إلى الوراء.
* ‎[[ReactNative/datepickerandroid|<code>DatePickerAndroid</code>‎]]: مربع حوار اختيار التاريخ العادي في Android.
* ‎[[ReactNative/drawerlayoutandroid|<code>DrawerLayoutAndroid</code>‎]]: يُصيِّر عرض ‎<code>DrawerLayout</code>‎.
* ‎<code>[[ReactNative/permissionsandroid|PermissionsAndroid]]</code>‎: يوفر الوصول إلى نموذج الصلاحيات الذي ظهر في نسخة Android M..
* ‎[[ReactNative/progressbarandroid|<code>ProgressBarAndroid</code>‎]]: يُصيِّر عرض ‎<code>ProgressBar</code>‎.
* ‎[[ReactNative/timepickerandroid|<code>TimePickerAndroid</code>‎]]: مربع حوار اختيار الوقت العادي في Android.
* ‎[[ReactNative/toastandroid|<code>ToastAndroid</code>‎]]: إنشاء تنبيه Android Toast.
* ‎[[ReactNative/toolbarandroid|<code>ToolbarAndroid</code>‎]]: يُصيِّر عرض ‎<code>Toolbar</code>‎.
* ‎[[ReactNative/viewpagerandroid|<code>ViewPagerAndroid</code>‎]]: حاوية تسمح بالتنقل يسارًا ويمينًا بين العروض الأطفال (child views).
==ميّزات أخرى==
قد تكون هذه المكونات مفيدة في بعض التطبيقات. للحصول على قائمة شاملة بالمكونات وواجهات برمجة التطبيقات، انظر الصفحة الرئيسيّة للتوثيق.
قد تكون هذه المكونات مفيدة في بعض التطبيقات. للحصول على قائمة شاملة بالمكونات وواجهات برمجة التطبيقات، انظر الصفحة الرئيسيّة للتوثيق.
* ‎<code>[[ReactNative/activityindicator|ActivityIndicator]]</code>‎: يعرض مؤشر تحميلٍ دائري.
* ‎<code>[[ReactNative/activityindicator|ActivityIndicator]]</code>‎: يعرض مؤشر تحميلٍ دائري.
* ‎[[ReactNative/alert|<code>Alert</code>‎]]: يطلق مربع حوار تنبيه مع العنوان والرسالة المحددين.
* ‎[[ReactNative/alert|<code>Alert</code>‎]]: يطلق مربع حوار تنبيه مع العنوان والرسالة المحددين.
* ‎[[ReactNative/animated|<code>Animated</code>‎]]: مكتبة لإنشاء تحريكات مرنة وفعالة يسهل بناءها وصيانتها.
* ‎[[ReactNative/animated|<code>Animated</code>‎]]: مكتبة لإنشاء تحريكات مرنة وفعالة يسهل بناءها وصيانتها.
* ‎[[ReactNative/cameraroll|<code>CameraRoll</code>‎]]: يوفر الوصول إلى معرض الكاميرا المحلي.
* ‎[[ReactNative/clipboard|<code>Clipboard</code>‎]]: يوفر واجهة لضبط المحتوى والحصول عليه من الحافظة (clipboard) على كل من iOS و Android.
* ‎[[ReactNative/dimensions|<code>Dimensions</code>‎]]: يوفر واجهة للحصول على أبعاد الجهاز.
* ‎[[ReactNative/dimensions|<code>Dimensions</code>‎]]: يوفر واجهة للحصول على أبعاد الجهاز.
* ‎[[ReactNative/keyboardavoidingview|<code>KeyboardAvoidingView</code>‎]]: يوفر عرضًا يتنقل تلقائيًا بعيدًا عن لوحة المفاتيح الوهميّة.
* ‎[[ReactNative/keyboardavoidingview|<code>KeyboardAvoidingView</code>‎]]: يوفر واجهة تتنقل تلقائيًا بعيدًا عن لوحة المفاتيح الافتراضيّة.
* ‎[[ReactNative/linking|<code>Linking</code>‎]]: يوفر واجهة عامة للتفاعل مع كل من روابط التطبيقات الواردة والصادرة.
* ‎[[ReactNative/linking|<code>Linking</code>‎]]: يوفر واجهة عامة للتفاعل مع كل من روابط التطبيقات الواردة والصادرة.
* ‎[[ReactNative/modal|<code>Modal</code>‎]]: يوفر طريقة بسيطة لتقديم المحتوى فوق عرضٍ مُطوَّق.
* ‎[[ReactNative/modal|<code>Modal</code>‎]]: يوفر طريقة بسيطة لتقديم المحتوى فوق واجهة تحتويه.
* ‎[[ReactNative/pixelratio|<code>PixelRatio</code>‎]]: يوفر الوصول إلى كثافة البكسل (pixel density) الخاصّة بالجهاز.
* ‎[[ReactNative/pixelratio|<code>PixelRatio</code>‎]]: يوفر الوصول إلى كثافة البكسل (pixel density) الخاصّة بالجهاز.
* ‎[[ReactNative/refreshcontrol|<code>RefreshControl</code>‎]]: يُستخدَم هذا المكون داخل ScrollView لإضافة وظيفة السحب للتحديث (pull to refresh).
* ‎[[ReactNative/refreshcontrol|<code>RefreshControl</code>‎]]: يُستخدَم هذا المكون داخل <code>[[ReactNative/scrollview|ScrollView]]</code> لإضافة وظيفة السحب للتحديث (pull to refresh).
* ‎<code>[[ReactNative/statusbar|StatusBar]]</code>‎: مكون للتحكم في شريط حالة التطبيقات.
* ‎<code>[[ReactNative/statusbar|StatusBar]]</code>‎: مكون للتحكم في شريط حالة التطبيق.
* ‎[[ReactNative/webview|<code>WebView</code>‎]]: مكون يعرض محتوى الويب في عرض أصيل (native view).


== مصادر ==
== مصادر ==
* [https://facebook.github.io/react-native/docs/components-and-apis صفحة Components and APIs في توثيق React Native الرسمي.]
* [https://facebook.github.io/react-native/docs/components-and-apis صفحة Components and APIs في توثيق React Native الرسمي.]
[[تصنيف:ReactNative]]
[[تصنيف:ReactNative]]
[[تصنيف:React Native Component]]

المراجعة الحالية بتاريخ 14:07، 9 أكتوبر 2021

يوفر React Native عددًا من المكونات المضمنة، ستجد قائمة كاملة بالمكونات وواجهات برمجة التطبيقات على الصفحة الرئيسيّة للتوثيق، إذا لم تكن متأكدًا من أين تبدأ، فألقِ نظرة على الفئات آتية الذكر.

مُجتمع React Native مجتمعٌ يضمّ آلاف المطورين، إذا كنت تبحث عن مكتبة تؤدّي مهمّة معينة فيمكنك ذلك من دليل إيجاد المكتبات.

المكونات الأساسية

تستخدم معظم التطبيقات أحد هذه المكونات الأساسية، ستحتاج إلى التعرف عليها لبناء تطبيقات React Native:

  • View: المكون الأساسي لبناء واجهة المستخدم.
  • ‎ :Text‎مُكوّنٌ لعرض النص.
  • Image‎: مُكوّنٌ لعرض الصور.
  • TextInput: مُكوّنٌ لإدخال النص في التطبيق عبر لوحة المفاتيح.
  • ScrollView‎: يوفرُ حاوية تمرير يمكنها احتواء عدّة مكونات.
  • StyleSheet: يوفر طبقة تجريد مشابهة لأنماط CSS.

واجهة المستخدم

  • Button: زر للتعامل مع اللمسات التي تصيّر بشكلٍ جميلٍ في أيّ منصّة.
  • Switch: يصير دخلًا ذا قيمة منطقيّة (boolean input).

القوائم

على النّقيض من مكوّن ScrollView الأكثر عمومية، فالمُكوّنات التالية تعرض العناصر الظاهرة على الشاشة فقط. ما يجعلها مناسبة لعرض قوائم طويلة من البيانات.

  • FlatList: لتصيير قائمة قابلة للتمرير بشكلٍ فعّالٍ.
  • SectionList: يُستخدَم للقوائم المُقسَّمة.

ميزات خاصة بمنصة Android

توفر العديد من المكونات التالية أغلفةً لأصناف Android شائعة الاستخدام.

  • BackHandler: التعرّف على ضغط زر الجهاز الخاصّ بالتنقّل إلى الوراء.
  • DrawerLayoutAndroid: يُصيِّر واجهة ‎DrawerLayout‎.
  • PermissionsAndroid‎: يوفر الوصول إلى نموذج الصلاحيات الذي ظهر في نسخة Android M.
  • ToastAndroid: إنشاء تنبيه Android Toast.

ميزات خاصة بمنصة iOS

توفر العديد من المكونات التالية أغلفةً لأصناف UIKit شائعة الاستخدام.

  • ActionSheetIOS: واجهة برمجة تطبيقاتٍ (API) لعرض ورقة إجراءات في iOS أو ورقة مشاركة.

ميزات أخرى

قد تكون هذه المكونات مفيدة في بعض التطبيقات. للحصول على قائمة شاملة بالمكونات وواجهات برمجة التطبيقات، انظر الصفحة الرئيسيّة للتوثيق.

  • ActivityIndicator‎: يعرض مؤشر تحميلٍ دائري.
  • Alert: يطلق مربع حوار تنبيه مع العنوان والرسالة المحددين.
  • Animated: مكتبة لإنشاء تحريكات مرنة وفعالة يسهل بناءها وصيانتها.
  • Dimensions: يوفر واجهة للحصول على أبعاد الجهاز.
  • KeyboardAvoidingView: يوفر واجهة تتنقل تلقائيًا بعيدًا عن لوحة المفاتيح الافتراضيّة.
  • Linking: يوفر واجهة عامة للتفاعل مع كل من روابط التطبيقات الواردة والصادرة.
  • Modal: يوفر طريقة بسيطة لتقديم المحتوى فوق واجهة تحتويه.
  • PixelRatio: يوفر الوصول إلى كثافة البكسل (pixel density) الخاصّة بالجهاز.
  • RefreshControl: يُستخدَم هذا المكون داخل ScrollView لإضافة وظيفة السحب للتحديث (pull to refresh).
  • StatusBar‎: مكون للتحكم في شريط حالة التطبيق.

مصادر