高防服务器

vue3怎么动态添加路由


vue3怎么动态添加路由

发布时间:2022-06-20 16:08:43 来源:高防服务器网 阅读:111 作者:iii 栏目:开发技术

今天小编给大家分享一下vue3怎么动态添加路由的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、初始化项目

初始化vite + vue + ts项目,引入vue-router。
目录结构如下,注意这个404重定向,vue3不支持直接使用“*”匹配所有路由了,要使用:catchAll(.*)

初始化路由:

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;

现在如果去访问vip路由,则会跳转到404页面。

二、添加“vip”路由

如果需要访问vip页面,那么就需要我们动态地添加vip路由,下面代码实现了vip路由添加:

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

此时我们再去访问vip路由路径:

可以成功访问了。

三、总结

可以了解到,动态添加路由就是使用了router对象的addRoute方法。有时候可能是添加嵌套路由,也就是子路由。

router.addRoute({ name: 'admin', path: '/admin', component: Admin })  router.addRoute('admin', { path: 'settings', component: AdminSettings })    // 这等效于:  router.addRoute({    name: 'admin',    path: '/admin',    component: Admin,    children: [{ path: 'settings', component: AdminSettings }],  })

以上就是“vue3怎么动态添加路由”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注高防服务器网行业资讯频道。

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[