دیباگ ریکت

دیباگ ریکت
دیباگ ریکت

مقدمه

در این پست قصد داریم به دیباگینگ در ریکت بپردازیم ،‌ از آنجایی که ریکت یک کتابخانه جاوا اسکریپتی هست دیباگ آن بسیار شبیه به جاوا اسکریپت هست که در این پست به آن پرداختیم برای ادامه کار حتما آن را مطالعه کنید.

در ادامه مهم ترین نیاز ما در دیباگ جاوا اسکریپت کنسول هست که در پست به آن پرداخته ایم برای اینکه در ادامه با مشکل مواجه نشوید بهتر است این پست را هم مطالعه کنید.

توضیحات کلی و ابزار های توسعه دهنده

مهم ترین قسمت دیباگ در ریکت گذاشتن کنسول لاگ است ، در جایی که به باگ خورده اید کنسول بگذارید تا متوجه مقادیر ورودی و خروجی شوید .

نکته بعدی استفاده از ابزار های توسعه دهنده ریکت هست که شما می توانید رندر شدن کامپونت ها را با آن مورد بررسی قرار دهید.

شما می توایند ابزار توسعه دهنده ریکت برای مرورگر کروم را از اینجا و برای مرورگر فایرفاکس را از اینجا نصب کنید.

سپس با رفتن به بخش inspect در مرورگر با گرفتن دکمه های ctrl + shift + i یا زدن دکه f12 در تب Components می توانید نحوه رندر شدن کامپونت های خود را مشاهده کنید.

React Developer Tools
React Developer Tools

برخی ابزار های دیگر ریکت مثل ریداکس یا آپلو کلاینت هم برای خود ابزار توسعه دهنده مجزا دارند که می توانید از آن ها هم برای دیباگ برنامه خود استفاده کنید.

دیباگ هوک ها

برای دیباگ هوک ها در ریکت ابزاری دیگری به جز کنسول لاگ وجود دارد به نام useDebugValue که خودش هوک هست و برای دیباگ هوک ها اختصاصی استفاده می شود و مقدار را در ابزار توسعه دهنده ریکت که در بالا به آن اشاره کردیم نشان می دهد.

function useFriendStatus(friendID) {
  const [isOnline, setIsOnline] = useState(null);
  // Show a label in DevTools next to this Hook
  // saeidfiy
  useDebugValue(isOnline ? 'Online' : 'Offline');
  return isOnline;
}

سخن پایانی

دیباگ ریکت بسیار شبیه به دیباگ در جاوا اسکریپت هست همراه با ابزار های بیشتر پس با مطالعه پست های لینک شده در مقدمه می توانید یک دید کلی از نحوه دیباگ در جاوا اسکریپت داشته باشید سپس با استفاده از ابزار های اختصاصی ریکت کار را برای خود آسان تر کنید


اگر سوالاتی دارید یا نیاز به برقراری ارتباط با من دارید، می‌توانید از طریق راه‌های ارتباطی زیر با من در تماس باشید:

GitHub

LinkedIn

می‌توانید من را در این پلتفرم‌ها دنبال کنید و پیام‌ها و سوالات خود را با من در میان بگذارید. من با شما در این پلتفرم‌ها همکاری خواهم کرد و پاسخ‌های لازم را ارائه خواهم داد.