Jadual Kandungan
1. Pengetahuan prasyarat
1.
2. Komponen
3. Pengurusan Negeri (Pengurusan Negeri)
2. Proses pelaksanaan
1 Pasang Penghala Vue
2 Konfigurasikan penghalaan
3. Cipta komponen tab
4. Tambah halaman tab
5 Tutup tab
3. Ringkasan
Rumah hujung hadapan web Soal Jawab bahagian hadapan vue3 melaksanakan halaman berbilang tab satu halaman

vue3 melaksanakan halaman berbilang tab satu halaman

May 24, 2023 pm 12:39 PM

Dalam era Internet hari ini, tabiat penggunaan pengguna sentiasa berubah. Pada masa yang sama, teknologi sentiasa dikemas kini. Dalam bidang teknologi bahagian hadapan, Vue.js kini merupakan salah satu rangka kerja bahagian hadapan yang paling popular, versi ketiganya, Vue3, telah dikeluarkan secara rasmi pada September 2020. Berbanding dengan lelaran Vue2 yang dikemas kini, Vue3 telah meningkatkan fungsi dan prestasi yang paling penting ialah sokongannya untuk berbilang tab. Artikel ini akan meneroka proses praktikal untuk melaksanakan fungsi berbilang tab halaman tunggal dalam Vue3.

1. Pengetahuan prasyarat

Sebelum memperkenalkan fungsi berbilang tab Vue3 secara mendalam, anda perlu memahami beberapa konsep asas Vue3:

1.

Penghalaan ialah konsep yang sangat penting di bahagian hadapan Ia bertanggungjawab untuk menguruskan hubungan antara URL penyemak imbas dan halaman. Dalam Vue, kita boleh melaksanakan lompatan penghalaan melalui Penghala Vue.

2. Komponen

Vue3 ialah rangka kerja berdasarkan pembangunan komponen, yang membahagikan aplikasi besar kepada komponen satu demi satu, dan setiap komponen boleh digunakan semula, yang meningkatkan penggunaan semula dan kebolehselenggaraan.

3. Pengurusan Negeri (Pengurusan Negeri)

Pengurusan negeri merujuk kepada penyimpanan berpusat, pengurusan dan penyelarasan negeri dalam aplikasi. Dalam Vue, kami menggunakan Vuex untuk melaksanakan pengurusan negeri.

2. Proses pelaksanaan

Berikut akan memperkenalkan cara menggunakan Vue3 dan Vue Router untuk melaksanakan fungsi satu halaman dan berbilang tab. Pelaksanaan khusus boleh dibahagikan kepada langkah-langkah berikut:

1 Pasang Penghala Vue

Penghala Vue ialah pustaka pengurusan penghalaan rasmi Vue.js, yang boleh melaksanakan lompatan dan penghalaan laluan dengan mudah. mengurus aplikasi satu halaman. Pasang Penghala Vue melalui npm:

npm install vue-router --save
Salin selepas log masuk

2 Konfigurasikan penghalaan

Dalam Vue3, konfigurasi penghalaan telah berubah berbanding dengan Vue2. Kita perlu mengkonfigurasi penghalaan dalam kaedah createApp:

//导入Vue Router 
import { createRouter, createWebHashHistory } from 'vue-router' 

//创建路由 
const router = createRouter({   history: createWebHashHistory(),   routes: routes }) 

//创建Vue App 
const app = createApp(App) 

//挂载路由 
app.use(router).mount('#app') 
Salin selepas log masuk

di mana createWebHashHistory() menentukan penggunaan nilai cincang ​​untuk melaksanakan lompatan penghalaan, dan routes ialah item konfigurasi penghalaan. Kami mentakrifkan laluan untuk setiap halaman tab dalam routes, seperti berikut:

const routes = [   { path: '/', component: Home, name: 'home', meta: { title: '主页' } },   { path: '/about', component: About, name: 'about', meta: { title: '关于' } },   { path: '/contact', component: Contact, name: 'contact', meta: { title: '联系我们' } } ] 
Salin selepas log masuk

Dalam laluan ini, kami mentakrifkan tiga halaman tab, iaitu rumah, tentang dan Hubungi kami.

3. Cipta komponen tab

Seterusnya, kita perlu mencipta komponen tab. Dalam Vue3, takrifan komponen telah berubah berbanding dengan Vue2. Kita perlu menggunakan kaedah defineComponent untuk mentakrifkan komponen:

import { defineComponent } from 'vue' 

export default defineComponent({   name: 'Home',   setup() {       return {}   },   render() {       return (           <div>                 这是主页             </div>       )   } }) 
Salin selepas log masuk

Digabungkan dengan halaman tab yang ditakrifkan dalam penghalaan di atas, kita boleh menjadikan komponen yang sepadan dalam fungsi render.

4. Tambah halaman tab

Seterusnya, kita perlu menambah fungsi halaman tab pada aplikasi. Kita boleh menggunakan tatasusunan untuk menyimpan tab terbuka Setiap elemen tatasusunan mewakili maklumat tab:

tabs: [    { title: '主页', name: 'home', path: '/', isCurrent: true },    { title: '关于', name: 'about', path: '/about', isCurrent: false },    { title: '联系我们', name: 'contact', path: '/contact', isCurrent: false } ]
Salin selepas log masuk

Antaranya, tajuk mewakili tajuk tab, nama mewakili nama tab dan laluan mewakili tab. tab. Laluan penghalaan yang sepadan, isCurrent menunjukkan sama ada tab semasa dipilih.

Seterusnya, kita perlu melaksanakan fungsi pembukaan tab. Apabila mengklik pilihan dalam menu, kita perlu terlebih dahulu menentukan sama ada laluan yang sepadan sudah wujud dalam tatasusunan tab. Jika ia sudah wujud, tetapkan tab semasa kepada keadaan yang dipilih, jika tidak tambahkan tab baharu:

//打开标签页 
openTab(tab) {  
   let routerName = this.$router.currentRoute.value.name   
   let t = this.tabs.find(x => x.name === tab.name)  
   if (!t) {       //不存在,新增标签页        
        this.tabs.push({ name: tab.name, title: tab.meta.title, path: tab.path, isCurrent: true })      
   } else {       //已存在,设为当前标签页      
        this.tabs.forEach(x => x.isCurrent = false)      
        t.isCurrent = true      
        this.$router.push(t.path)  
   }  
} 
Salin selepas log masuk

5 Tutup tab

Akhir sekali, kita juga perlu menutup Fungsi tab. Apabila butang tutup pada tab diklik, kita perlu memadamkan tab daripada tatasusunan dan menetapkan tab semasa ke tab sebelumnya:

//关闭标签页 
closeTab(tab) {      
   let i = this.tabs.findIndex(x => x.name === tab.name)      
   this.tabs.splice(i, 1)      

   let currentTab = this.tabs.find(x => x.isCurrent === true)      
   if (currentTab) {          
      this.$router.push(currentTab.path)      
   }  else {          
      this.$router.push('/')      
   }  
}
Salin selepas log masuk

3. Ringkasan

Lulus Dalam pengenalan artikel ini, kami telah mempelajari tentang idea asas dan proses pelaksanaan khusus Vue3 untuk melaksanakan fungsi berbilang tab satu halaman. Berbanding dengan Vue2, Vue3 mempunyai beberapa perubahan dalam penggunaan dan perlu dilaraskan mengikut keperluan sebenar, tetapi kelebihannya untuk menyokong berbilang tab masih jelas. Bagi pembangun yang perlu melaksanakan fungsi berbilang halaman dalam aplikasi web, kemunculan Vue3 memberikan kami penyelesaian yang baik.

Atas ialah kandungan terperinci vue3 melaksanakan halaman berbilang tab satu halaman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Peranan React dalam HTML: Meningkatkan Pengalaman Pengguna Peranan React dalam HTML: Meningkatkan Pengalaman Pengguna Apr 09, 2025 am 12:11 AM

React menggabungkan JSX dan HTML untuk meningkatkan pengalaman pengguna. 1) JSX membenamkan HTML untuk menjadikan pembangunan lebih intuitif. 2) Mekanisme DOM maya mengoptimumkan prestasi dan mengurangkan operasi DOM. 3) UI pengurusan berasaskan komponen untuk meningkatkan kebolehkerjaan. 4) Pengurusan negeri dan pemprosesan acara meningkatkan interaktiviti.

Apakah batasan sistem kereaktifan Vue 2 berkenaan dengan perubahan array dan objek? Apakah batasan sistem kereaktifan Vue 2 berkenaan dengan perubahan array dan objek? Mar 25, 2025 pm 02:07 PM

Sistem Reaktiviti Vue 2 bergelut dengan tetapan indeks array langsung, pengubahsuaian panjang, dan penambahan/penghapusan harta benda objek. Pemaju boleh menggunakan kaedah mutasi Vue dan vue.set () untuk memastikan kereaktifan.

Komponen React: Membuat unsur -unsur yang boleh diguna semula di HTML Komponen React: Membuat unsur -unsur yang boleh diguna semula di HTML Apr 08, 2025 pm 05:53 PM

Komponen React boleh ditakrifkan oleh fungsi atau kelas, merangkumi logik UI dan menerima data input melalui prop. 1) Tentukan komponen: Gunakan fungsi atau kelas untuk mengembalikan elemen bertindak balas. 2) Rendering Component: React Call Render Kaedah atau Melaksanakan Komponen Fungsi. 3) Komponen multiplexing: Lulus data melalui prop untuk membina UI yang kompleks. Pendekatan kitaran hayat komponen membolehkan logik dilaksanakan pada peringkat yang berbeza, meningkatkan kecekapan pembangunan dan pemeliharaan kod.

Apakah faedah menggunakan TypeScript dengan React? Apakah faedah menggunakan TypeScript dengan React? Mar 27, 2025 pm 05:43 PM

TypeScript meningkatkan pembangunan React dengan menyediakan keselamatan jenis, meningkatkan kualiti kod, dan menawarkan sokongan IDE yang lebih baik, dengan itu mengurangkan kesilapan dan meningkatkan kebolehkerjaan.

React and the Frontend: Membina Pengalaman Interaktif React and the Frontend: Membina Pengalaman Interaktif Apr 11, 2025 am 12:02 AM

React adalah alat pilihan untuk membina pengalaman front-end interaktif. 1) React memudahkan pembangunan UI melalui komponen dan DOM maya. 2) Komponen dibahagikan kepada komponen fungsi dan komponen kelas. Komponen fungsi adalah lebih mudah dan komponen kelas menyediakan lebih banyak kaedah kitaran hayat. 3) Prinsip kerja React bergantung kepada algoritma DOM dan perdamaian maya untuk meningkatkan prestasi. 4) Pengurusan negeri menggunakan useState atau ini. Kaedah kitaran hayat seperti ComponentDidMount digunakan untuk logik tertentu. 5) Penggunaan asas termasuk membuat komponen dan pengurusan negeri, dan penggunaan lanjutan melibatkan cangkuk tersuai dan pengoptimuman prestasi. 6) Kesalahan biasa termasuk kemas kini status yang tidak betul dan isu prestasi, kemahiran debugging termasuk menggunakan reactdevtools dan sangat baik

Bagaimanakah anda boleh menggunakan UserEducer untuk Pengurusan Negeri Kompleks? Bagaimanakah anda boleh menggunakan UserEducer untuk Pengurusan Negeri Kompleks? Mar 26, 2025 pm 06:29 PM

Artikel ini menerangkan menggunakan UserEducer untuk Pengurusan Negeri Kompleks dalam React, memperincikan manfaatnya ke atas UseState dan bagaimana untuk mengintegrasikannya dengan useeffect untuk kesan sampingan.

Apakah komponen berfungsi dalam vue.js? Bilakah mereka berguna? Apakah komponen berfungsi dalam vue.js? Bilakah mereka berguna? Mar 25, 2025 pm 01:54 PM

Komponen fungsional dalam vue.js adalah cangkuk kitaran hidup, ringan, dan kekurangan kitaran, sesuai untuk memberikan data tulen dan mengoptimumkan prestasi. Mereka berbeza daripada komponen yang berkesudahan dengan tidak mempunyai keadaan atau kereaktifan, menggunakan fungsi render secara langsung, a

Bagaimana anda memastikan bahawa komponen React anda boleh diakses? Alat apa yang boleh anda gunakan? Bagaimana anda memastikan bahawa komponen React anda boleh diakses? Alat apa yang boleh anda gunakan? Mar 27, 2025 pm 05:41 PM

Artikel ini membincangkan strategi dan alat untuk memastikan komponen React boleh diakses, memberi tumpuan kepada HTML semantik, atribut ARIA, navigasi papan kekunci, dan kontras warna. Ia mengesyorkan menggunakan alat seperti ESLINT-PLUGIN-JSX-A11Y dan AXE-CORE untuk TESTI

See all articles