Rumah > hujung hadapan web > View.js > Bagaimana untuk menambah penghalaan secara dinamik dalam vue3

Bagaimana untuk menambah penghalaan secara dinamik dalam vue3

WBOY
Lepaskan: 2023-05-17 23:22:16
ke hadapan
3799 orang telah melayarinya

1. Mulakan projek

Mulakan projek vite + vue + ts dan perkenalkan vue-router.
Struktur direktori adalah seperti berikut. Perhatikan ubah hala 404 ini tidak menyokong secara langsung menggunakan "*" untuk memadankan semua laluan Anda mesti menggunakan :catchAll(.*).

Bagaimana untuk menambah penghalaan secara dinamik dalam vue3

Laluan permulaan:

import {createRouter, createWebHashHistory} from "vue-router";
const  routes = [
    {
        path: "/",
        component: () => import("../views/HomePage.vue")
    },
    {
        path: "/404",
        component: () => import("../views/ErrorPage.vue")
    },
    {
        path: "/:catchAll(.*)", // 不识别的path自动匹配404
        redirect: '/404',
    },
]
const router=createRouter({
    history: createWebHashHistory(),
    routes
})
export default router;
Salin selepas log masuk

Kini jika anda mengakses laluan vip, anda akan melompat ke halaman 404.

Bagaimana untuk menambah penghalaan secara dinamik dalam vue3

2. Tambahkan laluan "vip"

Jika kita perlu mengakses halaman vip, kita perlu menambah laluan vip secara dinamik melaksanakan ini vip路由Tambah:

import {useRouter} from "vue-router";
let router = useRouter();
function addRouter(){
  router.addRoute(  {
    path: "/vip",
    component: () => import("../views/VipPage.vue")
  })
}
Salin selepas log masuk

Pada masa ini, kita boleh mengakses laluan penghalaan vip:

Bagaimana untuk menambah penghalaan secara dinamik dalam vue3

boleh diakses dengan jayanya.

3. Ringkasan

Dengan menggunakan kaedah addRoute objek penghala, anda boleh menambah laluan secara dinamik. Kadangkala anda boleh menambah laluan bersarang, yang merupakan sub-laluan.

rreeee

Atas ialah kandungan terperinci Bagaimana untuk menambah penghalaan secara dinamik dalam vue3. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan