CodeBlanks Logo Icon CodeBlanks

motion bileşeni

motion.div gibi bileşenlerle animasyon yapmayı öğrenirsin.

Varyantlar nedir?

Varyantlar, animasyon durumlarını adlandırılmış nesneler olarak tanımlamaya yarar. variants={{ hidden: { opacity: 0 }, visible: { opacity: 1 } }} ile 'hidden' ve 'visible' durumlarını tanımlarsın.

initial="hidden" ve animate="visible" ile bu durumları çağırırsın. Bu, kod tekrarını azaltır ve animasyonları yeniden kullanılabilir yapar.

Varyantlar, alt bileşenlere otomatik yayılır; bu sayede bir parent'ı değiştirdiğinde tüm çocuklar senkronize animasyon yapar.

Varyant kullanımı

Bir varyant nesnesi tanımlar, sonra motion.div'e variants prop'u ile verirsin. initial="hidden" ve animate="visible" ile durumları çağırırsın.

Bu yöntem, özellikle birden çok bileşenin aynı animasyonu paylaşması gerektiğinde kullanışlıdır. Tek bir nesne tanımlar, her yerde kullanırsın.

Varyantlar, transition'ı da içerebilir; bu sayede her durum kendi süre ve eğrisini tanımlar.

Uygulama Varyantlı animasyon yaz

Aşağıdaki iskeleti tamamla. const variants = { hidden: { opacity: 0 }, visible: { opacity: 1 } }; tanımla. VariantBox bileşeni yaz; <motion.div variants={variants} initial="hidden" animate="visible" transition={{ duration: 0.4 }}>Kutu</motion.div> döndür. motion'u 'framer-motion''dan içe aktar. export default ekle.

Başlangıç kodu

App.jsx
import { motion } from 'framer-motion';

// VariantBox bileşenini buraya yaz

Örnek çözüm

App.jsx
import { motion } from 'framer-motion';

const variants = {
  hidden: { opacity: 0 },
  visible: { opacity: 1 },
};

function VariantBox() {
  return (
    <motion.div
      variants={variants}
      initial="hidden"
      animate="visible"
      transition={{ duration: 0.4 }}
    >
      Kutu
    </motion.div>
  );
}

export default VariantBox;

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Varyantlar neyi sağlar?

  • Daha hızlı CSS
  • Daha az dosya
  • Adlandırılmış durumlar Doğru cevap
  • Daha kısa import

Açıklama: Varyantlar adlandırılmış durumlar sağlar.

2 varyant çağrısı

Soru
<motion.div variants={variants} initial="____" animate="visible">
Cevap
<motion.div variants={variants} initial="hidden" animate="visible">

Açıklama: hidden başlangıç durumudur.

3 motion bileşeni: kavramları eşleştir

Kavram Anlamı
variants Durum nesnesi
hidden Gizli durum
visible Görünür durum
transition Süre

İleri seviye bölümündeki tüm dersler