TGViewer
️ CodeNight | آموزش برنامه نویسی ️ CodeNight | آموزش برنامه نویسی @codenight_ir · 849 subscribers
Post #92 291
یک کامپوننت داخلی React برای انیمیشن‌های نرم، بدون هیچ کتابخانه‌ی اضافه

اگر تا حالا برای انیمیت کردن ورود و خروج کامپوننت‌ها سراغ framer-motion یا کدنویسی دستی با CSS transition رفته‌اید، خبر خوب اینه که دیگه لازم نیست.

در React نسخه‌ی ۱۹.۳ (منتشرشده ۹ سپتامبر ۲۰۲۶) کامپوننت ViewTransition رو به‌صورت رسمی و پایدار عرضه کرده؛ یعنی بعد از یک دوره‌ی طولانی experimental بودن، حالا می‌شه توی پروژه‌ی پروداکشن ازش استفاده کرد.
این کامپوننت روی View Transitions API خود مرورگر سوار شده و خودش تشخیص می‌ده که تغییر درخت کامپوننت‌ها چه نوعیه:
اضافه‌شدن (enter)، حذف‌شدن (exit)، تغییر محتوا یا استایل (update)، یا جابه‌جایی یک المان بین دو مکان مختلف (share).

رفتار پیش‌فرضش یک کراس‌فید نرمه، ولی کاملاً قابل شخصی‌سازی با CSS View Transition Classes یا Web Animations API هست.

نکته‌ی جالب‌تر، تابع addTransitionType هست که می‌ذاره انیمیشن رو بر اساس علت تغییر state مشخص کنید؛ مثلاً برای اسلایدر بگید حرکت به جلو از راست بیاد و حرکت به عقب از چپ.

import { ViewTransition, startTransition, addTransitionType } from 'react';

function nextSlide() {
startTransition(() => {
addTransitionType('next');
setCurrentSlide(c => c + 1);
});
}

<ViewTransition
enter={{ next: 'from-right', previous: 'from-left' }}
exit={{ next: 'to-left', previous: 'to-right' }}
>
<Page />
</ViewTransition>


این کامپوننت با startTransition، Suspense و useDeferredValue هم به‌خوبی کار می‌کنه، یعنی می‌تونید حتی fallback یک Suspense رو هم به محتوای نهایی به‌شکل نرم انیمیت کنید.

#React #فرانت_اند #برنامه_نویسی #جاوااسکریپت #وب

Sources:
• React 19.3

کانال آموزشی کدنایت | آموزش برنامه نویسی

https://t.me/codenight_ir
  • ❤ 5
More from @codenight_ir
  1. Sep 27, 2026💻 مهم‌ترین نکات در وایب کدینگ وایب کدینگ یعنی با کمک AI سریع‌تر ایده‌ات رو به کد تبدیل کن…
  2. Sep 26, 2026با این پرامپت ۲ تا باگ کریتیکال رو فیکس کردم که بعدا میتونست مشکل ساز بشه چیزهایی که قبلا…
  3. Sep 26, 2026🔐 برای بررسی امنیت پروژه‌ای که با AI می‌سازیم، چه پرامپتی بنویسیم؟ وقتی با وایب‌کدینگ یک…
  4. Sep 26, 2026⚠️ اتفاق هک شدن دیتابیس سایت فکرم رو حسابی درگیر کرد ک کل امنیت وبسایت رو با ai بررسی کنم…
  5. Sep 26, 2026مشکل از نشت فایل .env بود حالا چطور این فایل در دسترس هکر ها قرار گرفته بود جالب بود اول ک…
  6. Sep 26, 2026ببخشید بابت تاخیر و از دسترس خارج شدن سایت باید دلیلش رو پیدا میکردم و باگ های امنیتی رو ف…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →