ویژگی تصویر

معرفی و بررسی رویداد ها در React

  /  React   /  رویداد ها در React
بنر تبلیغاتی الف
فریمورک react - کتابخانه react

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

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

رویدادها در React: تفاوت‌ها با جاوااسکریپت سنتی

در React، رویدادها از سیستم SyntheticEvent استفاده می‌کنند که نسخه‌ای ساده‌شده و سازگار با مرورگرهای مختلف از رویدادهای مرورگر است. این سیستم به توسعه‌دهندگان اجازه می‌دهد که بدون نگرانی از تفاوت‌های مرورگرها، رویدادها را مدیریت کنند. در React، تفاوت‌های زیر با جاوااسکریپت سنتی وجود دارد:

  1. نحوه تعریف رویدادها
    برخلاف جاوااسکریپت سنتی که از نام‌های کوچکی مانند onclick یا onchange استفاده می‌کند، در React نام‌ها باید به‌صورت CamelCase نوشته شوند، مانند onClick و onChange.
  2. استفاده از JSX
    در React، باید تابعی به‌عنوان مقدار برای ویژگی رویداد تعیین شود، نه یک رشته. برای مثال:
<button onClick={handleClick}>Click Me</button>
  1. استفاده از SyntheticEvent
    رویدادها در React توسط سیستم SyntheticEvent مدیریت می‌شوند. این سیستم یک لایه انتزاعی است که API سازگار با مرورگرها ارائه می‌دهد.
  2. اتصال خودکار به عنصر
    در جاوااسکریپت سنتی، ممکن است نیاز به استفاده از addEventListener داشته باشید، اما در React، اتصال به‌طور خودکار در JSX انجام می‌شود.

تعریف و مدیریت رویدادها در React

برای تعریف و مدیریت رویدادها در React، باید یک تابع به‌عنوان هندلر (Handler) ایجاد کنید و آن را به ویژگی رویداد متصل کنید. به مثال زیر توجه کنید:

مثال: هندلینگ کلیک

تماشا در حالت تمام صفحه

توضیح کد

  1. تابع handleClick به‌عنوان هندلر تعریف شده است.
  2. این تابع به ویژگی onClick دکمه متصل شده است.
  3. هنگامی‌که دکمه کلیک شود، پیام “Button clicked!” نمایش داده می‌شود.

این ساختار باعث ساده‌تر شدن مدیریت رویدادها در پروژه‌های React می‌شود.

ارسال آرگومان به هندلرهای رویداد

گاهی اوقات لازم است آرگومان‌هایی به هندلر ارسال کنیم. در این حالت می‌توان از یک تابع ناشناس یا متد bind استفاده کرد.

مثال: ارسال آرگومان با تابع ناشناس

تماشا در حالت تمام صفحه

توضیح کد

  1. تابع handleClick آرگومان name را می‌پذیرد.
  2. تابع ناشناس برای ارسال مقدار React به هندلر استفاده شده است.

جلوگیری از رفتار پیش‌فرض

برای جلوگیری از رفتار پیش‌فرض عناصر HTML، می‌توان از متد preventDefault استفاده کرد.

مثال: جلوگیری از ارسال فرم

تماشا در حالت تمام صفحه

توضیح کد

  1. تابع handleSubmit متد preventDefault را فراخوانی می‌کند.
  2. این متد مانع از ارسال فرم و تازه‌سازی صفحه می‌شود.

رویدادهای ترکیبی در React

در بعضی موارد، ممکن است نیاز به مدیریت چندین رویداد داشته باشید. برای این کار می‌توانید رویدادها را ترکیب کنید.

مثال: مدیریت چندین رویداد

تماشا در حالت تمام صفحه

توضیح کد

  1. دو هندلر برای رویدادهای onMouseEnter و onMouseLeave تعریف شده‌اند.
  2. این رویدادها ورود و خروج ماوس را مدیریت می‌کنند.

رویدادها در React نقش کلیدی در تعاملات کاربر با رابط کاربری دارند. با استفاده از سیستم SyntheticEvent، توسعه‌دهندگان می‌توانند به‌سادگی و با سازگاری بیشتر رویدادها را مدیریت کنند. در این مقاله با مباحثی مانند تفاوت‌های رویدادهای React با جاوااسکریپت سنتی، نحوه تعریف هندلرها، ارسال آرگومان به هندلرها، جلوگیری از رفتار پیش‌فرض و مدیریت رویدادهای ترکیبی آشنا شدیم.

برای اطلاعات بیشتر می‌توانید به منابع زیر مراجعه کنید:

  • مستندات رسمی React
  • React SyntheticEvent API

آیا این مطلب برای شما مفید بود ؟

خیر
بله
بنر تبلیغاتی ج