Rumah  >  Artikel  >  hujung hadapan web  >  Fungsi peralihan dalam Vue3: melaksanakan peralihan animasi komponen

Fungsi peralihan dalam Vue3: melaksanakan peralihan animasi komponen

WBOY
WBOYasal
2023-06-18 16:20:381966semak imbas

Fungsi peralihan dalam Vue3: Laksanakan peralihan animasi bagi komponen

Vue3 ialah salah satu rangka kerja JavaScript yang paling popular pada masa ini. Ia menyediakan alatan yang komprehensif untuk menyelesaikan masalah pembinaan aplikasi bahagian hadapan. Antaranya, fungsi peralihan adalah salah satu fungsi yang sangat berkuasa dan berguna, yang boleh membantu kami merealisasikan peralihan animasi komponen. Dalam artikel ini, kami akan memperkenalkan fungsi peralihan secara terperinci dan menerangkan cara menggunakannya dalam aplikasi Vue3.

Peranan fungsi peralihan

Dalam Vue2, kami biasanya menggunakan komponen cafda773a3e42827d5d9338abf905240 untuk melaksanakan peralihan animasi komponen. Tetapi dalam Vue3, kita boleh menggunakan fungsi peralihan untuk menggantikan komponen cafda773a3e42827d5d9338abf905240 Fungsi fungsi peralihan adalah untuk menyediakan kesan peralihan animasi untuk komponen.

Fungsi peralihan mempunyai parameter penting berikut:

  • nama: digunakan untuk menetapkan nama kesan peralihan.
  • muncul: Menunjukkan sama ada kesan peralihan perlu muncul apabila komponen dipaparkan buat kali pertama.
  • mod: Mewakili mod animasi peralihan. Terdapat tiga mod untuk dipilih: masuk-keluar, keluar-masuk dan keluar lalai.
  • onBeforeEnter, onEnter, onAfterEnter, onBeforeLeave, onLeave, onAfterLeave: Mewakili fungsi panggil balik yang dicetuskan apabila komponen memasuki atau meninggalkan keadaan peralihan.

Langkah-langkah untuk menggunakan fungsi peralihan

Mari kita lihat cara menggunakan fungsi peralihan dalam aplikasi Vue3:

Langkah 1: Dalam templat komponen Vue Tetapkan fungsi peralihan dalam.

<template>
  <div>
    <transition name="fade" @enter="enter" @after-enter="afterEnter">
      // your component here
    </transition>
  </div>
</template>

Dalam contoh ini, kami menyediakan fungsi peralihan bernama "fade" dan menggunakan pendengar acara @enter dan @after-enter untuk mencetuskan fungsi enter dan afterEnter. Fungsi enter dan afterEnter akan dicetuskan apabila komponen memasuki animasi dan selepas animasi tamat.

Langkah 2: Tentukan fungsi panggil balik fungsi peralihan dalam komponen Vue.

<script>
import { defineComponent } from 'vue';

export default defineComponent({
  methods: {
    enter(el, done) {
      // el 表示要执行动画的元素。
      // done 是一个在动画过渡结束时调用的函数。
      // 动画执行完毕后必须调用 done 函数,否则动画可能会被卡死。
      el.style.opacity = 0;
      setTimeout(() => {
        el.style.transitionDuration = '0.5s';
        el.style.opacity = 1;
      });
      setTimeout(done, 1000);
    },
    afterEnter(el) {
      // 动画完成后调用的函数,可以在这里做一些清理工作。
      el.style.removeProperty('opacity');
    },
  },
});
</script>

Dalam contoh ini, kami mentakrifkan fungsi enter dan afterEnter. Fungsi enter digunakan untuk menetapkan keadaan awal elemen dan melaksanakan kesan peralihan animasi elemen. Fungsi afterEnter digunakan untuk membersihkan selepas peralihan animasi tamat.

Ringkasan

Dalam artikel ini, kami memperkenalkan fungsi peralihan dalam Vue3 secara terperinci. Kami melihat bahawa dengan menggunakan fungsi peralihan, kami boleh mencapai kesan peralihan animasi komponen dengan mudah. Pada masa yang sama, kami juga mengetahui bahawa fungsi peralihan mempunyai banyak parameter dan fungsi panggil balik, yang boleh ditetapkan mengikut keperluan kami sendiri. Saya berharap melalui pengenalan artikel ini, pembaca dapat memahami lebih lanjut fungsi peralihan dalam Vue3 dan menggunakannya secara fleksibel dalam pembangunan aplikasi Vue3.

Atas ialah kandungan terperinci Fungsi peralihan dalam Vue3: melaksanakan peralihan animasi komponen. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn