"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > رد فعل بسيط على كل مطور واجهة مستخدم يجب أن يعرفه

رد فعل بسيط على كل مطور واجهة مستخدم يجب أن يعرفه

تم النشر بتاريخ 2024-11-04
تصفح:365

React One-Liners Every UI Developer Should Know

المقدمة: قوة كود التفاعل الموجز

مرحبًا يا زملائي مطوري واجهة المستخدم! هل أنت مستعد لرفع مستوى لعبة React الخاصة بك؟ اليوم، نحن نتعمق في عالم React - تلك المقتطفات الأنيقة والمدمجة من التعليمات البرمجية التي يمكن أن تجعل حياتك أسهل بكثير. سواء كنت مبتدئًا في React أو محترفًا متمرسًا، فمن المؤكد أن هذه السطور ستضيف بعض الضغط الإضافي إلى مجموعة أدواتك.

أصبح React JS مكتبة مفضلة لبناء واجهات المستخدم، وذلك لسبب وجيه. إنها مرنة وفعالة وتتيح لنا إنشاء بعض الأشياء الرائعة. لكن في بعض الأحيان، نجد أنفسنا نكتب تعليمات برمجية أكثر من اللازم. هذا هو المكان الذي تكون فيه هذه الخطوط الفردية في متناول اليد. إنها مثل سكاكين الجيش السويسري في عالم React - صغيرة ولكنها قوية جدًا!

لذا، تناول مشروبك المفضل، واحصل على الراحة، ودعنا نستكشف 10 سطور من React ستجعلك تبرمج بشكل أكثر ذكاءً، وليس أكثر صعوبة. مستعد؟ هيا بنا نبدأ!

1. اختصار العرض الشرطي

فلنبدأ بسيناريو React الكلاسيكي: العرض الشرطي. كما تعلمون، عندما تريد إظهار شيء ما فقط في حالة استيفاء شرط معين. تقليديًا، يمكنك استخدام عبارة if أو عامل تشغيل ثلاثي. لكن تحقق من هذا:

{condition && }

تستخدم هذه الجوهرة الصغيرة عامل التشغيل المنطقي (&&) لعرض المكون فقط عندما يكون الشرط صحيحًا. إنها بسيطة ونظيفة وتنجز المهمة دون أي ضجة.

كيف يعمل

يكمن جمال هذا السطر الواحد في كيفية تقييم JavaScript للتعبيرات المنطقية. إذا كان الشرط قبل && خاطئًا، فسيكون التعبير بأكمله خاطئًا، ولن تعرض React أي شيء. لكن إذا كان هذا صحيحًا، ستنتقل React لتقييم ما يأتي بعد &&، والذي في هذه الحالة هو المكون الخاص بنا.

متى تستخدمه

هذه التقنية مثالية لتلك الأوقات التي يكون لديك فيها موقف واضح بنعم أو لا. ربما تريد عرض رسالة ترحيب فقط للمستخدمين الذين قاموا بتسجيل الدخول، أو عرض عرض خاص خلال ساعات معينة فقط. مهما كانت الحالة، فإن هذه الخطوط العريضة ستوفر لك التغطية.

2. اختصار الدعائم الافتراضية

التالي، دعونا نتحدث عن الدعائم الافتراضية. نعلم جميعًا مدى أهمية التعامل مع الحالات التي قد لا يتم فيها تمرير الخاصيات إلى أحد المكونات. تتضمن الطريقة المعتادة إعداد defaultProps أو استخدام المعلمات الافتراضية في توقيع الوظيفة. ولكن إليك جملة سريعة تفي بالغرض:

const {prop = defaultValue} = props;

يستخدم هذا السطر مهمة التدمير بقيمة افتراضية. إذا كانت الخاصية غير محددة في الخاصيات، فسوف تعود إلى القيمة الافتراضية.

لماذا هو رائع

هذا النهج نظيف للغاية ويحدث بشكل صحيح في الجسم الوظيفي. إنه مفيد بشكل خاص عندما تتعامل مع دعائم متعددة ولا ترغب في إحداث فوضى في توقيع وظيفتك أو إضافة كائن defaultProps منفصل.

مثال في العالم الحقيقي

تخيل أنك تقوم بإنشاء مكون زر يمكن أن يكون له أحجام مختلفة. يمكنك استخدامه مثل هذا:

const Button = ({ size = 'medium', children }) => {
  return ;
};

الآن، إذا استخدم شخص ما الزر الخاص بك دون تحديد الحجم، فسيتم تعيينه افتراضيًا على "متوسط". أنيق، أليس كذلك؟

3. اختصار تحديث الحالة

تعد إدارة الحالة جزءًا كبيرًا من تطوير React، وفي بعض الأحيان نحتاج إلى تحديث الحالة بناءً على قيمتها السابقة. إليك سطرًا واحدًا يجعل هذا أمرًا سهلاً:

setCount(prevCount => prevCount   1);

يستخدم هذا النموذج الوظيفي لمحدد الحالة، الذي يستقبل الحالة السابقة كوسيطة.

السحر وراء ذلك

يضمن هذا الأسلوب أنك تعمل دائمًا باستخدام أحدث قيمة للحالة، وهو أمر بالغ الأهمية في السيناريوهات التي قد يتم فيها تجميع تحديثات الحالة أو تأخيرها.

متى تصل إلى هذا

استخدم هذا عندما تحتاج إلى تحديث الحالة بناءً على قيمتها السابقة. إنها مفيدة بشكل خاص في سيناريوهات مثل العدادات، أو تبديل القيم المنطقية، أو أي موقف تعتمد فيه الحالة الجديدة على الحالة القديمة.

4. اختصار معالجة المصفوفة

يعد العمل مع المصفوفات في React مهمة شائعة، خاصة عند التعامل مع قوائم العناصر. إليك سطرًا واحدًا يساعدك على إضافة عنصر إلى مصفوفة في الحالة دون تغيير الأصل:

setItems(prevItems => [...prevItems, newItem]);

يستخدم هذا عامل الانتشار لإنشاء مصفوفة جديدة تحتوي على جميع العناصر السابقة، بالإضافة إلى العنصر الجديد في النهاية.

لماذا يهم؟

في React، الثبات هو المفتاح للأداء والقدرة على التنبؤ. تضمن لك هذه الجملة إنشاء مصفوفة جديدة بدلًا من تعديل المصفوفة الحالية، وهو بالضبط ما تريده React.

التطبيق العملي

لنفترض أنك تقوم بإنشاء تطبيق قائمة المهام. عندما يضيف مستخدم مهمة جديدة، يمكنك استخدام هذه السطر البسيط لتحديث حالتك:

const addTask = (newTask) => {
  setTasks(prevTasks => [...prevTasks, newTask]);
};

بسيطة ونظيفة وفعالة!

5. اختصار تحديث الكائن

على غرار المصفوفات، يعد تحديث الكائنات في الحالة عملية شائعة في React. إليك سطرًا واحدًا يتيح لك تحديث خصائص محددة لكائن ما دون تغيير الأصل:

setUser(prevUser => ({ ...prevUser, name: 'New Name' }));

يستخدم هذا عامل الانتشار لإنشاء كائن جديد بجميع خصائص المستخدم السابق، ولكنه يستبدل خاصية "الاسم" بقيمة جديدة.

جمالها

يحافظ هذا الأسلوب على الثبات بينما يسمح لك بتحديث الخصائص التي تحتاجها فقط. إنه مثل القول: "احتفظ بكل شيء كما هو، باستثناء هذه التغييرات المحددة."

عندما ستحب هذا

يتألق هذا السطر عندما تتعامل مع النماذج أو أي سيناريو حيث تحتاج إلى تحديث جزء من كائن بناءً على إدخال المستخدم أو أحداث أخرى.

6. اختصار رد الاتصال بالمرجع

المراجع في React مفيدة جدًا للوصول إلى عناصر DOM مباشرةً. إليك سطرًا واحدًا يقوم بإعداد رد اتصال المرجع:

 node && node.focus()} />

يؤدي هذا إلى إنشاء عنصر إدخال يتم التركيز عليه تلقائيًا عند عرضه.

كيف يعمل

يستقبل رد الاتصال المرجع عقدة DOM كوسيطة. تتحقق هذه السطر الواحد من وجود العقدة (لتجنب الأخطاء إذا كان المرجع فارغًا) ثم تستدعي طريقة التركيز عليها.

حالة الاستخدام المثالي

تعتبر هذه التقنية رائعة لإنشاء نماذج يمكن الوصول إليها حيث تريد التركيز تلقائيًا على حقل الإدخال الأول عند تحميل النموذج.

7. اختصار النمط

قد تكون الأنماط المضمّنة في React مطولة بعض الشيء في بعض الأحيان. إليك سطرًا واحدًا يجعلها أكثر إيجازًا:

يستخدم هذا كائنًا حرفيًا لتحديد أنماط متعددة في سطر واحد.

لماذا هذا رائع

على الرغم من أننا نفضل عمومًا فئات CSS للتصميم، إلا أن هناك أوقاتًا تكون فيها الأنماط المضمنة ضرورية أو ملائمة. تحافظ هذه السطور على JSX الخاص بك نظيفًا وسهل القراءة.

متى تستخدمه

يعد هذا مفيدًا بشكل خاص للأنماط الديناميكية التي تتغير بناءً على الدعائم أو الحالة، أو للنماذج الأولية السريعة عندما لا ترغب في إعداد ملف CSS منفصل.

8. اختصار اسم الفئة

أسماء الفئات الشرطية هي نمط شائع في React. إليك سطرًا واحدًا يجعل هذه العملية سلسة:

يستخدم هذا قالبًا حرفيًا وعامل تشغيل ثلاثي لإضافة فئة بشكل مشروط.

القطعة الذكية

تضمن السلسلة الفارغة في السلسلة الثلاثية عدم إضافة مساحة إضافية عندما يكون الشرط خاطئًا، مما يحافظ على نظافة أسماء الفصول الدراسية.

سيناريو العالم الحقيقي

يعد هذا مثاليًا لأشياء مثل الحالات النشطة في قوائم التنقل أو تبديل الحالات المرئية بناءً على تفاعل المستخدم.

9. اختصار حدود الخطأ

تعد حدود الأخطاء جزءًا مهمًا من تطبيقات React القوية. إليك سطرًا واحدًا ينشئ حدًا بسيطًا للخطأ:

class ErrorBoundary extends React.Component { state = { hasError: false }; static getDerivedStateFromError = () => ({ hasError: true }); render = () => this.state.hasError ? 

Something went wrong.

: this.props.children; }

على الرغم من أن هذه عبارة عن عبارات متعددة من الناحية الفنية في سطر واحد، إلا أنها تنشئ مكونًا كاملاً لحدود الخطأ بطريقة موجزة جدًا.

كسرها

تحدد هذه السطر الواحد مكون فئة بحالة لتتبع الأخطاء، وطريقة ثابتة لتحديث الحالة عند حدوث خطأ، وطريقة عرض تعرض رسالة خطأ أو تعرض العناصر الفرعية بشكل طبيعي.

عندما يكون في متناول اليدين

قم بلف هذا حول أي جزء من تطبيقك حيث تريد اكتشاف الأخطاء والتعامل معها بأمان، مما يمنع التطبيق بأكمله من التعطل.

10. اختصار المذكرة

أخيرًا وليس آخرًا، دعونا نلقي نظرة على سطر واحد لحفظ المكونات الوظيفية:

const MemoizedComponent = React.memo(({ prop1, prop2 }) => 
{prop1} {prop2}
);

يؤدي هذا إلى إنشاء نسخة محفوظة من مكون وظيفي لا يُعاد عرضه إلا إذا تغيرت دعائمه.

اللمسة السحرية

React.memo هو مكون ذو ترتيب أعلى يتخطى العرض عندما تكون الخاصيات متماثلة، وهو ما يمكن أن يكون بمثابة تعزيز كبير لأداء المكونات التي يتم عرضها غالبًا بنفس الخاصيات.

أفضل استخدام ل

يعد هذا أمرًا رائعًا بالنسبة للمكونات الوظيفية البحتة التي يكون عرضها باهظ التكلفة أو الموجودة في أعماق شجرة المكونات وتتلقى نفس الدعائم بشكل متكرر.

الخلاصة: احتضان قوة React One Lines

وهذا هو الحال يا رفاق! عشرة سطور قوية من React يمكن أن تجعل الكود الخاص بك أكثر وضوحًا وأكثر كفاءة، وأجرؤ على القول، أكثر متعة في الكتابة. بدءًا من العرض الشرطي وحتى حدود الأخطاء، توفر هذه المقتطفات المدمجة تأثيرًا حقيقيًا.

تذكر، على الرغم من أن هذه الخطوط البسيطة رائعة، إلا أنها ليست دائمًا الحل الأفضل لكل سيناريو. المفتاح هو فهم كيفية عملها ومتى يتم استخدامها. كما هو الحال مع كل الأمور المتعلقة بالبرمجة، يجب أن تكون سهولة القراءة وقابلية الصيانة دائمًا على رأس أولوياتك.

لذا، في المرة القادمة التي تكون فيها متعمقًا في مشروع React، جرب هذه العبارات البسيطة. قد توفر لك بعض الوقت وتجعل التعليمات البرمجية الخاصة بك أكثر أناقة قليلاً. ومن يدري؟ يمكنك أيضًا إثارة إعجاب زملائك من المطورين بمعالج React المكتشف حديثًا.

استمر في الاستكشاف، واستمر في التعلم، والأهم من ذلك، استمر في الاستمتاع مع React! بعد كل شيء، هذا ما يجعلنا مطوري واجهة المستخدم، أليس كذلك؟ برمجة سعيدة للجميع!

الوجبات السريعة الرئيسية:

  • يمكن للعبارات المفردة أن تقلل بشكل كبير من النمطية في كود React الخاص بك.
  • فهم هذه الأنماط يمكن أن يجعلك مطور React أكثر كفاءة.
  • ضع في اعتبارك دائمًا سهولة القراءة وقابلية الصيانة عند استخدام الخطوط الفردية.
  • جرّب هذه المقتطفات في مشاريعك لمعرفة المكان الذي يناسبها بشكل أفضل.
  • تذكر أن الهدف ليس مجرد كود أقصر، بل كود أكثر وضوحًا وتعبيرًا.

إذن، ما هو خط React المفضل لديك؟ هل لديك أي شخص آخر تقسم به؟ شاركها مع زملائك المطورين واستمر في المحادثة. معًا، يمكننا دفع حدود ما هو ممكن باستخدام React وإنشاء واجهات مستخدم أكثر روعة. حتى المرة القادمة، تفاعل سعيد!

بيان الافراج تم إعادة نشر هذه المقالة على: https://dev.to/nnnirajn/10-react-one-liners-every-ui-developer-should-know-c97?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3