Rumah > Artikel > hujung hadapan web > Bagaimana untuk menggunakan penghalaan dalam Vue untuk memaparkan dan menyembunyikan elemen halaman secara dinamik?
Vue ialah rangka kerja bahagian hadapan yang popular yang menyediakan cara yang elegan untuk membina antara muka pengguna. Penghalaan Vue ialah ciri penting dalam rangka kerja Vue Ia membolehkan kami melompat dan menavigasi antara halaman dengan menukar URL dalam aplikasi satu halaman. Selain fungsi asas ini, penghalaan Vue juga boleh digunakan untuk memaparkan dan menyembunyikan elemen halaman secara dinamik. Artikel ini akan memperkenalkan cara menggunakan penghalaan Vue untuk mencapai fungsi ini.
Pertama, kita perlu memasang penghalaan Vue. Anda boleh menggunakan arahan npm untuk memasangnya:
npm install vue-router
Selepas pemasangan selesai, kita boleh mengimport penghalaan Vue dan komponen yang berkaitan dalam fail kemasukan projek Vue (biasanya main.js):
import Vue from 'vue'; import VueRouter from 'vue-router'; Vue.use(VueRouter);
Seterusnya, kita perlu tentukan komponen penghalaan dan surat-menyurat. Dalam direktori akar projek Vue, buat folder penghala baharu dan buat fail index.js di bawah folder. Tentukan laluan dan komponen yang sepadan dalam fail index.js Contohnya adalah seperti berikut:
import Vue from 'vue'; import VueRouter from 'vue-router'; Vue.use(VueRouter); const routes = [ { path: '/home', component: () => import('@/components/Home.vue'), }, { path: '/about', component: () => import('@/components/About.vue'), }, { path: '/contact', component: () => import('@/components/Contact.vue'), }, ]; const router = new VueRouter({ routes, mode: 'history', }); export default router;
Dalam kod contoh di atas, kami menentukan tiga laluan: /home, /about dan /contact, yang masing-masing sepadan dengan tiga komponen Home. vue, About.vue dan Contact.vue. Seterusnya, kita perlu memperkenalkan penghalaan ke dalam contoh Vue:
import Vue from 'vue'; import App from './App.vue'; import router from './router/index'; new Vue({ router, render: h => h(App), }).$mount('#app');
Dalam kod di atas, kami menambah tika penghala pada tika Vue dan menjadikan komponen App.vue dalam fungsi pemaparan.
Kini, kami telah menyelesaikan persediaan penghalaan. Seterusnya, kita boleh menggunakan penghalaan dalam komponen untuk memaparkan dan menyembunyikan elemen halaman secara dinamik.
Dalam komponen, kita boleh menggunakan teg 975b587bf85a482ea10b0a28848e78a4 untuk memaparkan komponen yang sepadan dengan laluan. Ia menentukan komponen yang hendak dipaparkan berdasarkan laluan dalam URL semasa. Contohnya adalah seperti berikut:
<template> <div> <h1>My App</h1> <router-link to="/home">Home</router-link> <router-link to="/about">About</router-link> <router-link to="/contact">Contact</router-link> <router-view></router-view> </div> </template>
Dalam kod di atas, kami menggunakan teg b988a8fd72e5e0e42afffd18f951b277 untuk membuat pautan navigasi, setiap pautan sepadan dengan laluan. Apabila kami mengklik pada pautan, laluan dalam URL akan berubah dan teg 975b587bf85a482ea10b0a28848e78a4
Selain itu, kita juga boleh menggunakan objek $route dalam komponen untuk mengawal paparan dan penyembunyian komponen berdasarkan laluan URL semasa. Contohnya adalah seperti berikut:
<template> <div> <h1 v-if="$route.path === '/home'">Home</h1> <h1 v-if="$route.path === '/about'">About</h1> <h1 v-if="$route.path === '/contact'">Contact</h1> </div> </template>
Dalam kod di atas, kami menggunakan arahan v-if untuk menentukan sama ada untuk memaparkan teg 4a249f0d628e2318394fd9b75b4636b1 yang sepadan berdasarkan laluan URL semasa.
Melalui kod sampel di atas, kita boleh melihat cara menggunakan penghalaan Vue untuk memaparkan dan menyembunyikan elemen halaman secara dinamik. Dengan mengawal laluan URL, kami boleh melompat dan menavigasi antara halaman yang berbeza, dan mengawal paparan serta penyembunyian komponen berdasarkan laluan URL semasa. Ini memberikan kami kemudahan besar dalam membangunkan antara muka hadapan yang fleksibel.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan penghalaan dalam Vue untuk memaparkan dan menyembunyikan elemen halaman secara dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!