بعد از این درس چه کاری میتوانی انجام بدهی؟
- useState مقدار فعلی و setter را میدهد؛ Hook فقط در بالای Component یا Hook دیگر فراخوانی میشود.
- نمونه را اجرا کنی و نتیجه را پیش از تغییر حدس بزنی
- یک تغییر کوچک بدهی و اثرش را در مرورگر توضیح بدهی
- خطای این درس را با DevTools یا اعتبارسنج پیدا و اصلاح کنی
اگر نتیجه عجیب بود، اول همان عنصر را در DevTools انتخاب کن؛ ساختار و قانونهای واقعاً اعمالشده از حدسزدن سریعتر راه را نشان میدهند.
چرا مهم است؟ useState مقدار فعلی و setter را میدهد؛ Hook فقط در بالای Component یا Hook دیگر فراخوانی میشود.
اولین تمرین تو: دکمه کاهش اضافه کن و مقدار را کمتر از صفر نکن. پیش از تازهکردن صفحه، نتیجه را در یک جمله حدس بزن و بعد حدست را با مرورگر مقایسه کن.
از یک مثال کوچک شروع کن
useState مقدار فعلی و setter را میدهد؛ Hook فقط در بالای Component یا Hook دیگر فراخوانی میشود. نمونه کوتاه زیر را در فایل «src/HabitCounter.jsx» بنویس و صفحه را تازه کن. بعد از دیدن نتیجه، سراغ تغییر پیشنهادی برو؛ هدف حفظکردن نشانهها نیست، باید بفهمی کدام خط چه اثری روی صفحه گذاشت.
۱. نمونه را خودت تایپ کن
فایل را ذخیره کن و نتیجه را با انتظار این درس مقایسه کن.
۲. تغییر درس را انجام بده
دکمه کاهش اضافه کن و مقدار را کمتر از صفر نکن.
۳. خطا را عمداً ببین
فراخوانی useState داخل if قانون Hookها را میشکند و ترتیب state را نامطمئن میکند. سپس DevTools یا HTML Validator را باز کن و فقط همان علت را اصلاح کن.
اگر نتیجه عجیب بود، اول همان عنصر را در DevTools انتخاب کن؛ ساختار و قانونهای واقعاً اعمالشده از حدسزدن سریعتر راه را نشان میدهند.
سه قطعهای که باید بفهمی
useState؛ Component چیزی را به خاطر میسپارد
useState مقدار فعلی و setter را میدهد؛ Hook فقط در بالای Component یا Hook دیگر فراخوانی میشود.
نتیجه قابل مشاهده
هر کلیک عدد را یک واحد زیاد و متن دکمه را بهروز میکند.
نشانه خطا
فراخوانی useState داخل if قانون Hookها را میشکند و ترتیب state را نامطمئن میکند.
کاربر تعداد انجام عادت را با دکمه زیاد میکند و صفحه باید همان لحظه بهروز شود.
فرض کن کاربر تعداد انجام عادت را با دکمه زیاد میکند و صفحه باید همان لحظه بهروز شود. صفحه باز میشود، اما هنوز این بخش برای کاربر درست و قابل فهم نیست. در این درس فقط همان قسمت را میسازیم تا رابطه کد و نتیجه گم نشود.
قطعهها را به ترتیب درست بچین
روی هر قطعه بزن تا وارد پاسخ شود؛ برای برگرداندن دوباره روی آن بزن. با دکمههای جابهجایی هم میتوانی بدون کشیدن و رهاکردن ترتیب را اصلاح کنی.
بررسی ساختار تمرین
این صفحه کامپایلر کامل React نیست؛ ساختار تمرین را صادقانه بررسی میکند و خروجی مورد انتظار را نشان میدهد. برای اجرای کامل به محیط رسمی همان زبان نیاز است.
یک بخش را تغییر بده و دکمه بررسی را بزن.
راهنماییها مرحلهای هستند؛ اول خودت پیام خطا را بخوان.
دکمه کاهش اضافه کن و مقدار را کمتر از صفر نکن. پیش از تازهکردن صفحه، نتیجه را در یک جمله حدس بزن و بعد حدست را با مرورگر مقایسه کن.
این سه اشتباه را انجام نده
فراخوانی useState داخل if قانون Hookها را میشکند و ترتیب state را نامطمئن میکند.
تغییر چند بخش همزمان و نامشخصشدن علت نتیجه
اعتماد به ظاهر یک اندازه صفحه و بررسینکردن موبایل یا صفحهکلید
با 5 سؤال مطمئن شو که مفهوم را گرفتهای
در این درس چه چیزی باید در مرورگر دیده شود؟
چرا فقط یک بخش را تغییر میدهیم؟
اولین سرنخ خطای این درس چیست؟
بعد از تغییر کد چه کاری مفید است؟
چه زمانی آماده درس بعدی هستی؟
فهمیدی، تغییر دادی، نتیجه را توضیح دادی؟
فقط در این صورت درس را کامل کن و سراغ مرحله بعد برو.