Vue3 实现动态路由

#通过自主学习 实现简单的动态路由

参考网址动态路由 | Vue Router

1 为什么要进行动态路由

在项目的开发中,我们不能只把所有路由全部放在前端,通过后期项目深入开发以及权限,动态路由由此应用

2 实现思路

1 通过发送网络请求来获取路由标

2通过router方法添加到路由

3实现动态路由

实现代码

1发送请求,获取到路由列表自定义方法来进行实现

const getRouter = async () => {
  const result = await axios.get("http://localhost:3000/router")
  if(result.status === 200){
    dynamicRouting(result.data)
  }
}

2 可以通过两种方式来进行添加 

我这种会有所限制,需要大家根据自身的实际情况来改变

import router from "../router";
interface Route {
    routeName : string;
    pathName : string;
}

async function dynamicRouting(route : Array<Route>){
    console.log(route);
    const routeList = route.map((item : Route)=>{
        return {
            path : item.routeName,
            component : () => import(""+item.pathName)
        }
    })
    console.log(routeList);
    router.addRoute(routeList[0]);
    // router.replace(route.currentRoute.value.fullPath)
    await router.replace(router.currentRoute.value.fullPath)
    
}
export default dynamicRouting;

思路视频

vue3动态路由实现

  • 12
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue 3 是一种流行的 JavaScript 框架,用于构建用户界面。它提供了一种简洁、高效的方式来实现动态路由。下面是 Vue 3 实现动态路由的步骤: 1. 安装 Vue Router:首先,你需要安装 Vue Router。可以使用 npm 或者 yarn 进行安装,命令如下: ``` npm install vue-router ``` 或者 ``` yarn add vue-router ``` 2. 创建路由配置文件:在你的项目中创建一个路由配置文件,例如 `router.js`。在该文件中,导入 VueVue Router,并创建一个新的路由实例。然后,定义你的路由规则和对应的组件。例如: ```javascript import { createRouter, createWebHistory } from 'vue-router'; import Home from './components/Home.vue'; import About from './components/About.vue'; const routes = [ { path: '/', component: Home }, { path: '/about', component: About } ]; const router = createRouter({ history: createWebHistory(), routes }); export default router; ``` 3. 在主应用程序中使用路由:在你的主应用程序中,导入路由配置文件,并将其作为插件使用。例如: ```javascript import { createApp } from 'vue'; import App from './App.vue'; import router from './router'; const app = createApp(App); app.use(router); app.mount('#app'); ``` 4. 在组件中使用动态路由:在你的组件中,可以使用 `<router-link>` 组件来创建链接,并使用 `to` 属性指定目标路由。例如: ```html <template> <div> <router-link to="/">Home</router-link> <router-link to="/about">About</router-link> </div> </template> ``` 你还可以使用 `<router-view>` 组件来显示当前路由对应的组件。例如: ```html <template> <div> <router-view></router-view> </div> </template> ``` 这样,你就可以实现动态路由了。当用户点击链接时,Vue Router 会根据路由规则加载对应的组件,并在 `<router-view>` 中显示。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值