Vue ialah rangka kerja JavaScript popular yang menyediakan banyak ciri dan pilihan untuk membantu pembangun membuat aplikasi web responsif. Pengawal ialah konsep yang sangat penting dalam Vue Artikel ini akan membincangkan kegunaan asas dan kes pengawal Vue.
Gambaran Keseluruhan Vue Guard
Dalam Vue, pengawal ialah fungsi yang boleh mendengar peristiwa kitaran hayat laluan dan komponen. Apabila peristiwa ini dicetuskan, pengawal boleh melakukan tindakan seperti mengesahkan kebenaran pengguna, menyalin dan memeriksa data masuk, dsb. Pengawal Vue terbahagi kepada dua kategori: pengawal global dan pengawal laluan Perbezaan utama antara mereka terletak pada objek yang mereka pantau.
Pengawal global
Pengawal global dikaitkan dengan kitaran hayat aplikasi Vue. Mereka boleh melakukan beberapa operasi apabila setiap tika Vue dibuat, dimusnahkan, dikemas kini atau dipasang. Pengawal global termasuk empat fungsi cangkuk berikut:
Pengawal Laluan
Pengadang laluan ialah fungsi cangkuk yang dicetuskan apabila aplikasi menavigasi ke laluan tertentu. Mereka boleh memantau sejarah akses laluan, menyemak sama ada pengguna mempunyai kebenaran untuk mengakses laluan tertentu, mengendalikan pemuatan data tak segerak dan operasi lain. Pengawal laluan Vue termasuk enam fungsi cangkuk berikut:
Menggunakan Vue guards
Vue guards sangat penting dalam pembangunan sebenar Ia boleh digunakan untuk mengendalikan logik perniagaan dalam pelbagai senario. Di bawah ini kami menggunakan contoh untuk menunjukkan penggunaan asas pengawal Vue.
Andaikan terdapat halaman yang memerlukan pengguna log masuk untuk mengakses Apabila pengguna tidak log masuk, dia perlu dialihkan ke halaman log masuk. Kita boleh menggunakan beforeEach guard untuk mencapai fungsi ini. Mula-mula tentukan tatasusunan penghalaan:
const routes = [ { path: '/', name: 'home', component: Home }, { path: '/login', name: 'login', component: Login }, { path: '/profile', name: 'profile', component: Profile, meta: { requiresAuth: true } } ]
Dalam konfigurasi penghalaan, kami menentukan laluan /profile yang memerlukan log masuk untuk mengakses dan menandakannya sebagai memerlukan pengesahan melalui maklumat meta penghalaan. Seterusnya, tambahkan fungsi cangkuk beforeEach dalam fail router.js:
router.beforeEach((to, from, next) => { const currentUser = firebase.auth().currentUser; const requiresAuth = to.matched.some(record => record.meta.requiresAuth); if (requiresAuth && !currentUser) { next('/login'); //如果需要登录并且用户未登录,则重定向到登录页面 } else { next(); //否则允许导航到目标路由 } });
Dalam fungsi sebelumSetiap cangkuk, kita mula-mula mendapatkan objek pengguna semasa currentUser, dan kemudian gunakan atribut requireAuth untuk menentukan sama ada laluan sasaran memerlukan log masuk untuk mengakses. Jika log masuk diperlukan dan pengguna semasa tidak log masuk, ubah hala ke halaman log masuk. Jika tidak, benarkan navigasi ke laluan sasaran (menggunakan kaedah next() untuk membenarkan navigasi).
Kesimpulan
Vue guard ialah konsep yang sangat penting dalam rangka kerja Vue Ia boleh digunakan untuk memantau peristiwa kitaran hayat penghalaan dan komponen, dan melakukan beberapa operasi apabila peristiwa ini dicetuskan. seperti mengesahkan Keizinan, menyalin dan memeriksa data masuk, dsb. Artikel ini memperkenalkan pengetahuan asas pengawal global dan pengawal laluan, dan menyediakan contoh untuk menunjukkan penggunaan asas pengawal Vue Ia bertujuan untuk membolehkan pembangun memahami dan menggunakan pengawal Vue dengan lebih baik, dan menggunakan sepenuhnya peranan mereka dalam pembangunan sebenar.
Atas ialah kandungan terperinci Cara menggunakan vue guard. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!