العرض الشرطي الثلاثي (Ternary Rendering)
جزء من قسم الأساسيات في رحلة React على Coddy — الدرس 33 من 42.
لا يمكن للأقواس الملتفة في JSX أن تحوي بيان if، ولكنها تتسع لـ العامل الشرطي الثلاثي (ternary operator) بشكل مثالي، وهو يغطي تقريبًا كل حالة "إما/أو" على الشاشة:
{isLoggedIn ? 'Welcome back!' : 'Please log in'}الشرط أولاً، ثم القيمة للحالة true، ثم القيمة للحالة false. يمكن أن يكون كلا الجانبين عناصر JSX كاملة:
{isLoggedIn
? <p>Welcome back!</p>
: <button>Log in</button>}اقرنه بالحالة (state) وستتبدل الصفحة مباشرة: اقلب القيمة البولينية (boolean)، وسيعيد React تقديم الفرع الآخر.
التحدي
سهلأنشئ سطر حالة تسجيل الدخول.
- أضف حالة منطقية (boolean)
loggedIn، تبدأ بـfalse. - الزر (
id="login") يعكس حالتها عند كل نقرة. - الفقرة (
id="status") تعرضWelcome back!عند تسجيل الدخول وPlease log inبخلاف ذلك، باستخدام التعبير الشرطي الثلاثي (ternary).
جرّب بنفسك
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<div id="root"></div>
<script type="module" src="main.jsx"></script>
</body>
</html>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4الـ Props
ما هي الـ Props؟تمرين تمرير الـ Propsخاصيتان (Two Props)المكون نفسه، بيانات جديدةخاصية Children Propملخص: الـ Props7الشروط والمصفوفات
العرض الشرطي الثلاثي (Ternary Rendering)العرض باستخدام &&عرض قائمةأهمية المفاتيح (Keys)التصفية ثم التعيين (Filter, Then Map)ملخص: الشروط والمصفوفات2تعبيرات JSX
الأقواس المعقوفةالعمليات الرياضية داخل الأقواسالأقواس في السماتاستدعاء الدوال في JSXملخص: تعبيرات JSX5الحالة والأحداث
ما هي الحالة (State)؟عداد النقراتالعد بخطواتالتبديل باستخدام الحالةحالة مستقلةملخص: الحالة والأحداث8مشروع: بطاقة الملف الشخصي
الخطوة 1: هيكل البطاقةالخطوة 2: بطاقة مع Propsالخطوة 3: زر الإعجابالخطوة 4: تبديل المتابعة