التبديل باستخدام الحالة
جزء من قسم الأساسيات في رحلة React على Coddy — الدرس 25 من 42.
الحالة لا تقتصر على الأرقام فقط. تُعد حالة boolean المبدل القياسي لإظهار وإخفاء العناصر:
const [isOpen, setIsOpen] = useState(false);
<button onClick={() => setIsOpen(!isOpen)}>Menu</button>
{isOpen ? <p>I am visible!</p> : null}خدعتان تعملان معًا:
setIsOpen(!isOpen): علامة!تقلب القيمة البولينية (boolean)، بحيث يمكن لزر واحد الفتح والإغلاق معًا{condition ? jsx : null}: عرضnullيؤدي إلى عدم عرض أي شيء؛ العنصر لا يكون مخفيًا فحسب، بل لا يكون موجودًا بالأساس
التحدي
متوسطقم بإنشاء كاشف عن الحرق (spoiler reveal).
- أضف حالة منطقية (boolean state) باسم
revealed، وتبدأ بقيمةfalse. - يقوم الزر (
id="toggle") بقلب حالتها عند كل نقرة. - عند كشف الحرق، اعرض
<p>يحتوي علىid="secret"والنصThe cake is real؛ وخلاف ذلك قم بعملrenderلـnull.
جرّب بنفسك
<!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>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
2تعبيرات JSX
الأقواس المعقوفةالعمليات الرياضية داخل الأقواسالأقواس في السماتاستدعاء الدوال في JSXملخص: تعبيرات JSX5الحالة والأحداث
ما هي الحالة (State)؟عداد النقراتالعد بخطواتالتبديل باستخدام الحالةحالة مستقلةملخص: الحالة والأحداث8مشروع: بطاقة الملف الشخصي
الخطوة 1: هيكل البطاقةالخطوة 2: بطاقة مع Propsالخطوة 3: زر الإعجابالخطوة 4: تبديل المتابعة