在 Vue3 中实现动态路由主要依靠 Vue Router 4 的 addRoute
方法,以下是详细实现步骤:
一、基础配置
// router/index.js
import {
createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(),
routes: [
// 静态路由
{
path: '/login', component: () => import('@/views/Login.vue') },
// 动态路由将在此处后续添加
]
})
export default router
二、核心实现方案
1. 接口获取路由数据
// 通常从后端获取的路由结构示例
const asyncRoutes = [
{
path: '/dashboard',
component: 'Layout',
children: [
{
path: 'analysis',
component: 'DashboardAnalysis'
}
]
}
]
2. 数据格式转换
// 转换后端路由数据为 Vue Router 格式
function transformRoutes(routes) {
return routes.map