آموزش Interactive Components در Figma؛ ساخت کامپوننت تعاملی

آموزش Interactive Components در Figma و ساخت کامپوننت تعاملی
آموزش ساخت Interactive Components در Figma

Interactive Components در Figma به شما اجازه می‌دهند Interaction را مستقیما بین Variantهای یک Component Set تعریف کنید. نتیجه این است که وقتی یک Instance از آن کامپوننت را داخل طراحی قرار می‌دهید، رفتار تعاملی آن از قبل آماده است و مجبور نیستید همان اتصال‌های Prototype را در هر Frame دوباره بسازید.

این قابلیت برای اجزایی مثل Button، Toggle، Checkbox، Radio Button و کنترل‌های چندحالته بسیار کاربردی است. آموزش قبلی این صفحه همین مفهوم را معرفی می‌کرد؛ در نسخه جدید، همان هدف آموزشی حفظ شده و با ساختار فعلی Prototype در Figma، اکشن Change to، State Management و ارتباط Interactive Components با Variables کامل‌تر شده است.

در این آموزش چه چیزهایی یاد می‌گیرید؟

  • Interactive Component چیست و چه زمانی کاربرد دارد
  • چرا برای ساخت آن به Variants و Component Set نیاز داریم
  • چطور Interaction را بین Variantها تعریف کنیم
  • اکشن Change to چه کاری انجام می‌دهد
  • چطور Hover، Pressed، Checked و On/Off را پروتوتایپ کنیم
  • چطور Interactionهای Component-level با Instanceها منتقل می‌شوند
  • State Memorization و Reset component state چه زمانی مهم می‌شوند
  • چطور Interactive Components را با Variables ترکیب کنیم
  • اشتباهات رایج در ساخت کامپوننت‌های تعاملی

ویدیوی آموزش Interactive Components در Figma

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

Youtube ویدئو

Interactive Components در Figma چیست؟

در Prototype معمولی، Interaction اغلب بین Frameها یا Objectهای مختلف ساخته می‌شود. Interactive Components این امکان را می‌دهد که Interaction بین Variantهای یک Component Set داخل خود کامپوننت تعریف شود. وقتی بعدا Instance آن Component را در یک صفحه قرار می‌دهید، Variant Interactionهای تعریف‌شده همراه آن Instance در Prototype در دسترس هستند.

مثلا یک Button می‌تواند Variantهای Default، Hover و Pressed داشته باشد. به‌جای اینکه برای هر صفحه چند اتصال تکراری بسازید، رفتار Hover و Pressed را یک‌بار داخل Component Set تعریف می‌کنید و همان منطق در Instanceهای بعدی قابل استفاده می‌شود.

پیش‌نیاز: اول Variants و Component Set را بسازید

Interactive Components بر پایه Variants کار می‌کنند. Variantهایی که می‌خواهید بین آن‌ها Interaction تعریف شود باید داخل یک Component Set قرار داشته باشند. اگر هنوز این بخش را کامل بلد نیستید، ابتدا آموزش Variants و Component Set در Figma را ببینید.

برای یک Toggle ساده، مثلا دو Variant با State=Off و State=On کافی است. برای Button می‌توانید Stateهای Default، Hover و Pressed داشته باشید. نکته مهم این است که Stateها را فقط به اندازه نیاز واقعی محصول بسازید و برای تغییرات محتوایی از Component Properties کمک بگیرید.

چطور Interactive Component بسازیم؟

  1. یک Component Set با Variantهای موردنیاز بسازید.
  2. Variant مبدا را انتخاب کنید و وارد Prototype شوید.
  3. یک Prototype connection از Variant مبدا به Variant مقصد ایجاد کنید.
  4. Action را روی Change to قرار دهید.
  5. Trigger مناسب مثل While hovering، While pressing یا On click را انتخاب کنید.
  6. Animation و Transition را متناسب با رفتار واقعی Component تنظیم کنید.
  7. از Component یک Instance در یک Frame واقعی بسازید و Prototype را در Presentation view تست کنید.

اکشن Change to چه کاری انجام می‌دهد؟

Change to برای جابه‌جایی بین Variantهای یک Component Set در Prototype استفاده می‌شود. مثلا در Hover، Button از Default به Hover تغییر می‌کند یا با کلیک روی Toggle، Variant از Off به On می‌رود.

این تفاوت مهمی با Navigate to دارد: Navigate to کاربر را به Frame یا مقصد دیگری می‌برد، اما Change to وضعیت همان Component را بین Variantهایش تغییر می‌دهد. به همین دلیل برای شبیه‌سازی Stateهای UI ابزار مناسب‌تری است.

مثال ۱: Button با Hover و Pressed

  • Default → While hovering → Change to → Hover
  • Hover → While pressing → Change to → Pressed
  • برای Click اصلی Button می‌توانید Interaction دیگری مثل Navigate to روی Instance یا Prototype اضافه کنید.

اگر Triggerهای Component-level و Prototype-level با هم تداخل داشته باشند، باید ترتیب و نوع Triggerها را تست کنید. Figma بین Variant interactions و Interactionهای معمول Prototype تفاوت قائل می‌شود و در بعضی حالت‌ها Interaction عادی می‌تواند Variant Interaction با Trigger مشابه را جایگزین کند.

مثال ۲: Toggle یا Checkbox

برای Toggle دو Variant با State=Off و State=On بسازید. روی Off یک On click → Change to → On و روی On یک On click → Change to → Off تعریف کنید. حالا هر Instance می‌تواند بدون ساخت چند Frame جداگانه مثل یک کنترل واقعی تغییر وضعیت دهد.

State Management در Interactive Components

Figma می‌تواند وضعیت آخر یک Interactive Component را هنگام حرکت بین Frameها به خاطر بسپارد و State را بین Instanceهای matching به اشتراک بگذارد. این رفتار برای بعضی Prototypeها مفید است، اما همیشه چیزی نیست که می‌خواهید.

اگر لازم است Component بعد از Navigation به حالت اولیه برگردد، در Interaction مربوط به جابه‌جایی Frame گزینه Reset component state را بررسی کنید. این گزینه Component را به State اولیه‌ای که روی Canvas تعریف شده برمی‌گرداند.

Interactive Components و Variables

در Prototypeهای پیشرفته‌تر می‌توانید Variables را به Interactive Components متصل کنید. وقتی Interaction مقدار Variable را تغییر می‌دهد، همان Variable می‌تواند Variant یا Propertyهای دیگر را هم به‌روزرسانی کند. این روش برای ساخت Prototypeهایی مثل انتخاب گزینه، شمارنده، Theme و رفتارهای وابسته به State کاربردی است.

اشتباهات رایج

  • ساخت Interaction قبل از معماری Component: ابتدا Variantها و Stateها را منطقی کنید، بعد Interaction بسازید.
  • ساخت Frameهای تکراری: اگر فقط State یک Component عوض می‌شود، معمولا Change to مناسب‌تر از Duplicate کردن چند Frame است.
  • Triggerهای متناقض: Interactionهای Component و Prototype را با Trigger مشابه بدون تست روی هم قرار ندهید.
  • نادیده گرفتن State Management: اگر Component باید بعد از Navigation Reset شود، رفتار پیش‌فرض را بررسی کنید.
  • Stateهای بیش‌ازحد: هر حالت کوچک را Variant نکنید؛ از Component Properties و Variables در جای مناسب استفاده کنید.

چه زمانی Interactive Components انتخاب خوبی هستند؟

  • دکمه‌های Default/Hover/Pressed
  • Toggle و Switch
  • Checkbox و Radio Button
  • Accordion و کنترل‌های Expand/Collapse
  • Input و کنترل‌های چندحالته
  • Componentهایی که Interaction آن‌ها در چند صفحه تکرار می‌شود

جمع‌بندی و ادامه مسیر

Interactive Components کمک می‌کنند Behavior یک UI Component را کنار ساختار و Stateهایش نگه دارید. Variants حالت‌ها را تعریف می‌کنند، Change to بین آن‌ها جابه‌جا می‌شود و Triggerها مشخص می‌کنند این تغییر چه زمانی اتفاق بیفتد. نتیجه Prototypeهایی تمیزتر، قابل‌استفاده‌مجددتر و نزدیک‌تر به رفتار واقعی محصول است.

منابع رسمی برای مطالعه بیشتر

Hossein Mahmoodi
حسین محمودی

طراح محصول | مدرس | یوتیوبر

مقاله‌ها: 132