


Cara mengendalikan komponen yang dimuatkan secara dinamik dan dimuatkan secara malas dalam Vue
Cara mengendalikan komponen yang dimuatkan secara dinamik dan dimuatkan secara malas dalam Vue
Dalam proses membangunkan projek menggunakan Vue, kami sering menghadapi keperluan untuk komponen yang dimuatkan secara dinamik dan dimuatkan secara malas. Pemuatan dinamik komponen merujuk kepada memutuskan sama ada untuk memuatkan komponen berdasarkan keadaan atau peristiwa, manakala pemuatan malas merujuk kepada memuatkan fail kod komponen atas permintaan dan bukannya memuatkan kod semua komponen apabila halaman dipaparkan pada mulanya. Artikel ini akan memperkenalkan cara mengendalikan komponen yang dimuatkan secara dinamik dan malas dalam Vue dan memberikan contoh kod khusus.
1. Muatkan komponen secara dinamik
1 Gunakan arahan v-if
Dalam Vue, anda boleh menggunakan arahan v-if untuk menukar pemuatan komponen secara dinamik. Sebagai contoh, kami memuatkan komponen berbeza berdasarkan status log masuk pengguna:
<template> <div> <div v-if="loggedIn"> <login-success></login-success> </div> <div v-else> <login-form></login-form> </div> </div> </template> <script> import LoginSuccess from './LoginSuccess.vue'; import LoginForm from './LoginForm.vue'; export default { data() { return { loggedIn: false } }, components: { LoginSuccess, LoginForm } } </script>
Dalam kod di atas, kami menentukan sama ada pengguna log masuk berdasarkan nilai log Masuk Jika log masuk, komponen LoginSuccess dipaparkan, jika tidak, Log Masuk komponen dipaparkan.
2. Gunakan komponen dinamik
Selain menggunakan arahan v-if, Vue juga menyediakan komponen dinamik untuk mencapai pemuatan komponen yang dinamik. Sebagai contoh, muatkan komponen yang sepadan mengikut item menu berbeza yang dipilih oleh pengguna:
<template> <div> <component :is="currentComponent"></component> <ul> <li @click="currentComponent = 'Home'">Home</li> <li @click="currentComponent = 'About'">About</li> <li @click="currentComponent = 'Contact'">Contact</li> </ul> </div> </template> <script> import Home from './Home.vue'; import About from './About.vue'; import Contact from './Contact.vue'; export default { data() { return { currentComponent: 'Home' } }, components: { Home, About, Contact } } </script>
Dalam kod di atas, kami menggunakan komponen komponen dalam Vue dan secara dinamik mengikat komponen yang perlu dimuatkan pada masa ini melalui atribut :is.
2. Malas memuatkan komponen
Malas memuatkan komponen bermakna hanya kod komponen yang perlu dipaparkan pada masa ini dimuatkan semasa pemaparan awal halaman, bukannya memuatkan kod semua komponen sekaligus. Ini boleh meningkatkan kelajuan pemuatan dan prestasi halaman dengan sangat baik.
Vue menyediakan komponen tak segerak dan Penghala Vue untuk melaksanakan pemuatan malas komponen.
1. Komponen Asynchronous
Dalam Vue, anda boleh menggunakan fungsi pemisahan kod pek web untuk melaksanakan pemuatan malas komponen. Contohnya:
// 使用import()函数来异步加载组件 const AsyncComponent = () => import('./AsyncComponent.vue');
Dalam kod di atas, gunakan fungsi import() untuk memuatkan komponen AsyncComponent secara tidak segerak. Semasa membina projek, webpack akan membungkus AsyncComponent ke dalam fail berasingan dan bukannya membungkusnya dengan komponen lain dalam fail utama.
2.Vue Router
Vue Router juga boleh melaksanakan pemuatan malas komponen. Dalam konfigurasi penghalaan, anda boleh menggunakan fungsi import() untuk memuatkan komponen secara tidak segerak, seperti:
const router = new VueRouter({ routes: [ { path: '/home', component: () => import('./Home.vue') }, { path: '/about', component: () => import('./About.vue') }, { path: '/contact', component: () => import('./Contact.vue') } ] });
Dalam kod di atas, kaedah pemuatan asynchronous Router Vue digunakan Apabila pengguna mengakses laluan yang sepadan, komponen yang sepadan akan dimuatkan secara tidak segerak .
Ringkasan:
Dalam Vue, pemuatan dinamik dan pemuatan malas komponen adalah keperluan yang sangat biasa. Komponen yang dimuatkan secara dinamik boleh dilaksanakan menggunakan arahan v-if dan komponen dinamik, dan komponen pemuatan malas boleh dilaksanakan menggunakan komponen tak segerak dan Penghala Vue. Dengan menggunakan teknologi ini secara fleksibel, anda boleh meningkatkan prestasi projek anda dan pengalaman pengguna.
Di atas adalah pengenalan kepada cara mengendalikan komponen yang dimuatkan secara dinamik dan malas dalam Vue, saya harap ia akan membantu anda.
Atas ialah kandungan terperinci Cara mengendalikan komponen yang dimuatkan secara dinamik dan dimuatkan secara malas dalam Vue. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Menggunakan json.parse () rentetan ke objek adalah yang paling selamat dan paling efisien: pastikan rentetan mematuhi spesifikasi JSON dan mengelakkan kesilapan biasa. Gunakan cuba ... menangkap untuk mengendalikan pengecualian untuk meningkatkan keteguhan kod. Elakkan menggunakan kaedah eval (), yang mempunyai risiko keselamatan. Untuk rentetan JSON yang besar, parsing parsing atau parsing tak segerak boleh dipertimbangkan untuk mengoptimumkan prestasi.

Vue.js sesuai untuk projek kecil dan sederhana dan lelaran yang cepat, sementara React sesuai untuk aplikasi besar dan kompleks. 1) Vue.js mudah digunakan dan sesuai untuk situasi di mana pasukan tidak mencukupi atau skala projek kecil. 2) React mempunyai ekosistem yang lebih kaya dan sesuai untuk projek dengan prestasi tinggi dan keperluan fungsional yang kompleks.

Vue.js tidak sukar untuk dipelajari, terutamanya bagi pemaju dengan asas JavaScript. 1) Reka bentuk progresif dan sistem responsif memudahkan proses pembangunan. 2) Pembangunan berasaskan komponen menjadikan pengurusan kod lebih cekap. 3) Contoh penggunaan menunjukkan penggunaan asas dan lanjutan. 4) Kesilapan biasa boleh disahpepijat melalui Vuedevtools. 5) Pengoptimuman prestasi dan amalan terbaik, seperti menggunakan V-IF/V-Show dan atribut utama, boleh meningkatkan kecekapan aplikasi.

Vue.js terutamanya digunakan untuk pembangunan front-end. 1) Ia adalah rangka kerja JavaScript yang ringan dan fleksibel yang difokuskan pada membina antara muka pengguna dan aplikasi satu halaman. 2) Inti Vue.js adalah sistem data responsifnya, dan pandangannya dikemas kini secara automatik apabila data berubah. 3) Ia menyokong pembangunan komponen, dan UI boleh dibahagikan kepada komponen bebas dan boleh diguna semula.

Menggunakan bootstrap dalam vue.js dibahagikan kepada lima langkah: Pasang bootstrap. Import bootstrap di main.js. Gunakan komponen bootstrap secara langsung dalam templat. Pilihan: Gaya tersuai. Pilihan: Gunakan pemalam.

Anda boleh menambah fungsi ke butang VUE dengan mengikat butang dalam templat HTML ke kaedah. Tentukan kaedah dan tulis logik fungsi dalam contoh Vue.

Terdapat tiga cara untuk merujuk kepada fail JS dalam vue.js: Secara langsung tentukan jalan menggunakan & lt; skrip & gt; tag ;; import dinamik menggunakan cangkuk kitaran hayat yang dipasang (); dan mengimport melalui Perpustakaan Pengurusan Negeri VUEX.

Pilihan Watch di Vue.js membolehkan pemaju mendengar perubahan dalam data tertentu. Apabila data berubah, tontonkan mencetuskan fungsi panggil balik untuk melakukan paparan kemas kini atau tugas lain. Pilihan konfigurasinya termasuk segera, yang menentukan sama ada untuk melaksanakan panggilan balik dengan serta -merta, dan mendalam, yang menentukan sama ada untuk mendengarkan secara rekursif terhadap objek atau tatasusunan.
