الفرق بين المراجعتين لصفحة: «React/Topics»
Kinan-mawed (نقاش | مساهمات) |
Kinan-mawed (نقاش | مساهمات) |
||
سطر 111: | سطر 111: | ||
=== [[React/code splitting|تقسيم الشيفرة]] === | === [[React/code splitting|تقسيم الشيفرة]] === | ||
شرح طرق تقسيم الشيفرة باستخدام صياغة <code>import()</code> الديناميكية، والمكتبات، وتقسيم الشيفرة المُعتمِد على الطريق. وأهميّة تقسيم الشيفرة في تحسين زمن تحميل الصفحة. | |||
=== [[React/strict mode|الوضع الصارم (Strict Mode)]] === | === [[React/strict mode|الوضع الصارم (Strict Mode)]] === | ||
أهمية استخدام الوضع الصارم في التعرف على المكوّنات التي لا تمتلك توابع دورة حياة آمنة، وكشف استخدام واجهة برمجة التطبيقات (API) القديمة للسياق ومراجع السلاسل النصيّة، وكشف التأثيرات الجانبية غير المتوقعة. | |||
== مرجع إلى واجهة برمجة التطبيق (API) في React == | == مرجع إلى واجهة برمجة التطبيق (API) في React == | ||
=== [[React/react api|واجهة برمجة التطبيق (API) ذات المستوى الأعلى في React]] === | === [[React/react api|واجهة برمجة التطبيق (API) ذات المستوى الأعلى في React]] === | ||
مرجع إلى المكوّنات والفرق بين الصنف <code>React.Component</code> والصنف <code>React.PureComponent</code>. وواجهة برمجة التطبيق المستخدمة لإنشاء عناصر React وتحويلها، وإنشاء الأجزاء والمراجع. | |||
=== [[React/react component|الصنف React.Component]] === | === [[React/react component|الصنف React.Component]] === |
مراجعة 21:14، 15 سبتمبر 2018
تثبيت React
تجربة React
تجربة React مباشرةً على الإنترنت أو إعداد بيئة تطوير محليّة خاصّة بك.
إضافة React إلى تطبيق جديد
إعداد تطبيق صفحة واحدة (single-page application) مع كل شيء تحتاجه من أجل سير عمل التطوير بسلاسة، بما في ذلك اكتشاف الأخطاء (linting)، والاختبار، وتحسينات الإنتاج، والمزيد من ذلك.
إضافة React إلى تطبيق موجود
لن تحتاج إلى إعادة كتابة تطبيقك للبدء باستخدام React. تشرح هذه الصفحة طريقة إضافة React إلى تطبيق موجود مسبقًا، مع إعداد خط بناء التطبيقات واستخدام إصدارات التطوير والإنتاج.
روابط شبكة توزيع المحتوى CDN
روابط شبكة توزيع المحتوى الخاصّة بمكتبة React للتطوير والإنتاج.
المفاهيم الأساسية
مثال أهلًا بالعالم في React
طريقة تنفيذ مثال أهلًا بالعالم في React، مع الحديث عن درجة المعرفة المفترضة في JavaScript للمتابعة في التوثيق.
مقدمة إلى JSX
أهميّة استخدام صياغة JSX وهي عبارة عن امتداد لصياغة JavaScript ، تُستخدَم مع React لوصف المظهر الذي ينبغي أن تكون عليه واجهة المستخدم.
تصيير العناصر
شرح تصيير العناصر إلى DOM وطريقة تحديثها، مع أخذ مثال عن تطبيق الساعة الموقوتة لفهم ذلك.
المكونات والخاصيات
تُتيح لنا المُكوِّنات (Components) تقسيم واجهة المستخدم إلى قطع مُستقِلَّة قابلة لإعادة الاستخدام، والتفكير بكل قطعة على انفراد. تقبل المكوّنات مُدخَلات المستخدم والتي تُدعى الخاصيّات props
. تشرح هذه الصفحة الفرق بين مكوّنات الأصناف والدوال وطريقة استخراج وتركيب المكوّنات.
حالة ودورة حياة المكونات
تتحدّث هذه الصفحة عن حالة المكوّنات وأهميتها من خلال مثال عملي للساعة الموقوتة. مع شرح طريقة استخدام الحالة بشكل صحيح، ومقدمة إلى توابع دورة حياة المكوّنات.
معالجة الأحداث في React
الفرق بين معالجة الأحداث في React ومعالجتها في DOM، وطريقة تمرير وسائط إلى معالجات الأحداث.
التصيير الشرطي
بإمكانك في React إنشاء مُكوِّنات مميّزة تُغلِّف السلوك الذي تريده، ثم بعد ذلك تُصيِّر فقط أجزاء منها اعتمادًا على حالة تطبيقك. يعمل التصيير الشرطي في React بنفس الطريقة التي تعمل فيها التعابير الشرطيّة في JavaScript، حيث تستطيع استخدام مُعامِلات JavaScript مثل if أو المُعامِل الشرطي لإنشاء عناصر تُمثِّل الحالة الحاليّة، ثمّ تدع React تُحدِّث واجهة المستخدم لمُطابقتها.
القوائم والمفاتيح
طريقة تصيير مكوّنات متعددة، وأهميّة المفاتيح في معرفة العناصر التي تغيرت، أو أُضيفت، أو أُزيلت.
الحقول
طريقة استخدام الحقول (forms) في React والفرق بين طريقة تعريفها في HTML وطريقة تعريفها في React، مع الحديث عن مفهوم المكوّنات المضبوطة.
رفع الحالات المشتركة للمستوى الأعلى
طريقة رفع الحالة المشتركة بين المُكوِّنات مُتعدِّدة التي تعكس نفس البيانات المتغيّرة إلى أقرب عنصر أب مشترك لها، وذلك بتطبيق مثال عن آلة حاسبة تُحوِّل درجة الحرارة بين سيلزيوس وفهرنهايت.
الفرق بين التركيب والوراثة في React
أهمية استخدام التركيب في React وشرح هذا المفهوم وأفضليّة استخدامه على استخدام الوراثة.
أسلوب التفكير في React
أسلوب التفكير النموذجي أثناء بناء تطبيقات React وذلك بشرح بناء جدول بيانات منتجات قابل للبحث باستخدام React.
الدليل المتقدم
شرح JSX بالتفصيل
تشرح هذه الصفحة بالتفصيل صياغة JSX وطريقة التعامل مع الخاصيّات props
عند استخدام هذه الصياغة واستخدام العناصر الأبناء في JSX.
التحقق من الأنواع الثابتة
استخدام أدوات التحقق من الأنواع الثابتة مثل Flow و TypeScript للتعرّف على بعض أنواع المشاكل قبل تنفيذ الشيفرة، وتحسين سير عمل المُطوِّر عن طريق إضافة ميّزات مثل الإكمال التلقائي.
التحقق من الأنواع باستخدام PropTypes
استخدام propTypes
والتي هي أداة مُضمَّنة في React للتحقّق من الأنواع واكتشاف الأخطاء.
استخدام المراجع مع DOM
أهميّة استخدام المراجع للوصول إلى عقد DOM وعناصر React خارج تدفّق البيانات النموذجي في React.
المكونات غير المضبوطة
شرح المكوّنات غير المضبوطة التي تسمح لـ DOM بالتعامل مع بيانات الحقول والفرق بينها وبين المكوّنات المضبوطة.
تحسين الأداء
طرق تسريع تطبيقات React لتحسين الأداء.
React بدون ES6
طريقة استخدام React بدون أصناف ES6، وذلك عن طريق التابع createReactClass()
.
React بدون JSX
طريقة استخدام React بدون صياغة JSX، وذلك عن طريق استدعاء التابع React.createElement
.
المطابقة (Reconciliation)
شرح خوارزمية المقارنة في React لتحديد التغييرات الحاصلة وإعادة التصيير لتحديث واجهة المستخدم بحسب تلك التغييرات.
استخدام السياق (Context) في React
يُزوِّدنا السياق (Context) بطريقة لتمرير البيانات عبر شجرة المُكوّنات بدون الحاجة لتمرير الخاصيّات props
يدويًّا من الأعلى للأسفل في كل مستوى.
استخدام الأجزاء (Fragments) في React
طريقة استخدام الأجزاء لكي يُعيد المكوّن عناصر متعددة في React.
المداخل (Portals) في React
استخدام المداخل لتصيير المكونات الأبناء إلى عقدة DOM موجودة خارج تسلسل DOM للمكونات الآباء.
حدود الأخطاء
تعريف حدود الأخطاء وطريقة استخدامها لالتقاط الأخطاء والتعامل معها في المكوّنات الأبناء لحد الخطأ.
مكونات الويب
شرح مفهوم مكوّنات الويب والفرق بينها وبين مكوّنات React.
المكونات ذات الترتيب الأعلى
المكوّنات ذات الترتيب الأعلى هي تقنية متقدمة في React لإعادة استخدام منطق المكونات. ففي حين أنّ المكوّن الاعتيادي يُحوّل الخاصيّات إلى واجهة مستخدم، يُحوّل المكوّن ذو الترتيب الأعلى مكوّنًا إلى مكوّن آخر. سنناقش في هذه الصفحة الفائدة من المكوّنات ذات الترتيب الأعلى وكيفية كتابتها.
تمرير المراجع
تمرير المراجع هو تقنية لتمرير مرجع ref
تلقائيًّا من مكوّن إلى عناصره الأبناء. لا يكون هذا ضروريًّا بشكل نموذجي لمعظم مكوّنات التطبيق، ولكن قد يكون مفيدًا لبعض أنواع المكوّنات، خاصّة مكتبات المكوّنات القابلة لإعادة الاستخدام. سنتحدث في هذه الصفحة عن أشيع الحالات التي نحتاج فيها تمرير المراجع.
خاصيات التصيير
يُشير مصطلح خاصيّة التصيير (render prop) إلى تقنية بسيطة لمشاركة الشيفرة بين مكوّنات React باستخدام خاصية والتي قيمتها هي عبارة عن دالة.يأخذ المكوّن الذي يمتلك خاصيّة تصيير دالة تُعيد عنصر React ويستدعيها بدلًا من تنفيذ منطق التصيير الخاص به. سنناقش في هذه الصفحة فائدة خاصيّات التصيير وكيفية كتابة خاصيّات التصيير الخاصّة بك.
تكامل React مع المكتبات الأخرى
يمكن استخدام React وتضمينها مع المكتبات الأخرى. سنتحدث في هذه الصفحة عن بعض أشيع الحالات مع التركيز على التكامل مع jQuery و Backbone، ولكن يمكن تطبيق نفس الأفكار لتكامل المكوّنات مع أي شيفرة موجودة حاليًّا.
سهولة الوصول
الفائدة من سهولة الوصول، والتي هي تصميم وإنشاء مواقع يُمكِن استخدامها من قبل أي شخص. والأدوات المُستخدَمة لتحقيق سهولة الوصول في تطبيقات React.
تقسيم الشيفرة
شرح طرق تقسيم الشيفرة باستخدام صياغة import()
الديناميكية، والمكتبات، وتقسيم الشيفرة المُعتمِد على الطريق. وأهميّة تقسيم الشيفرة في تحسين زمن تحميل الصفحة.
الوضع الصارم (Strict Mode)
أهمية استخدام الوضع الصارم في التعرف على المكوّنات التي لا تمتلك توابع دورة حياة آمنة، وكشف استخدام واجهة برمجة التطبيقات (API) القديمة للسياق ومراجع السلاسل النصيّة، وكشف التأثيرات الجانبية غير المتوقعة.
مرجع إلى واجهة برمجة التطبيق (API) في React
واجهة برمجة التطبيق (API) ذات المستوى الأعلى في React
مرجع إلى المكوّنات والفرق بين الصنف React.Component
والصنف React.PureComponent
. وواجهة برمجة التطبيق المستخدمة لإنشاء عناصر React وتحويلها، وإنشاء الأجزاء والمراجع.