Cara menggunakan Vue untuk melaksanakan kesan bulatan kemajuan
Pengenalan:
Dalam pembangunan web, kesan bulatan kemajuan sering digunakan untuk memaparkan kemajuan pemuatan, kira detik dan senario lain. Sebagai rangka kerja bahagian hadapan yang popular, Vue menyediakan pelbagai alatan dan fungsi cangkuk kitaran hayat, yang boleh melaksanakan pelbagai kesan khas dengan mudah. Artikel ini akan memperkenalkan cara menggunakan Vue untuk melaksanakan kesan bulatan kemajuan yang mudah dan memberikan contoh kod yang berkaitan.
1. Permulaan projek
Pertama, kita perlu mencipta projek Vue. Anda boleh menggunakan Vue-CLI untuk membina rangka projek asas dengan cepat. Jalankan arahan berikut dalam baris arahan:
npm install -g @vue/cli vue create progress-circle-demo cd progress-circle-demo npm run serve
Arahan di atas akan memasang Vue-CLI secara global, mencipta projek bernama progress-circle-demo, dan memulakan pelayan pembangunan.
2. Tulis komponen
Buat fail bernama ProgressCircle.vue dalam direktori src sebagai kod teras komponen bulatan kemajuan. Kod khusus adalah seperti berikut:
<template> <div class="progress-circle"> <div class="circle"> <div class="mask full"></div> <div class="mask half"></div> <div class="fill"></div> </div> <span class="text">{{ progress }}%</span> </div> </template> <script> export default { props: { progress: { type: Number, default: 0, validator(value) { return value >= 0 && value <= 100; } } } } </script> <style scoped> .progress-circle { display: inline-block; position: relative; width: 50px; height: 50px; } .circle { position: relative; width: 100%; height: 100%; transform: rotate(-90deg); border-radius: 50%; overflow: hidden; box-sizing: border-box; } .mask { position: absolute; width: 100%; height: 100%; border-radius: 50%; clip: rect(0, 50px, 50px, 25px); } .full { background-color: #ccc; } .half { background-color: #f60; } .fill { position: absolute; width: 100%; height: 100%; background-color: #f60; transform: rotate(0deg); transform-origin: center center; transition: transform 0.6s ease-out; } .text { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 14px; color: #333; } </style>
Kod di atas mentakrifkan komponen ProgressCircle, yang menggunakan struktur HTML untuk mencapai kesan bulatan kemajuan dan menerima nilai kemajuan melalui atribut props. Bulatan kemajuan terdiri daripada lapisan topeng bulat dan lapisan isian, dan kesan animasi dicapai dengan menukar atribut transformasi lapisan isian.
3. Gunakan komponen
Gunakan komponen yang anda baru tulis dalam fail App.vue dalam direktori src. Kod khusus adalah seperti berikut:
<template> <div id="app"> <ProgressCircle :progress="60" /> </div> </template> <script> import ProgressCircle from './components/ProgressCircle.vue'; export default { name: 'App', components: { ProgressCircle } } </script>
Kod di atas memperkenalkan komponen ProgressCircle dan menggunakannya dalam templat, menghantar atribut kemajuan untuk mengawal kemajuan.
4. Jalankan projek
Kini kita boleh menjalankan arahan npm run serve
dalam baris arahan untuk memulakan pelayan pembangunan. Buka http://localhost:8080 dalam penyemak imbas untuk melihat kesan bulatan kemajuan.
Ringkasan:
Artikel ini memperkenalkan cara menggunakan Vue untuk melaksanakan kesan khas bulatan kemajuan melalui contoh mudah. Dalam projek itu, pelarasan gaya dan logik yang sepadan boleh dibuat mengikut keperluan sebenar. Saya harap artikel ini akan membantu anda memahami cara melaksanakan kesan khas bulatan kemajuan dalam Vue.
Pautan rujukan:
Atas ialah kandungan terperinci Cara menggunakan Vue untuk melaksanakan kesan khas bulatan kemajuan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!