vue动态路由实现原理 addRoute
vue新版router.addRoute基础用法
新版Vue Router中用router.addRoute
来替代原有的router.addRoutes
来动态添加路由、子路由
在添加子路由的时候
比如原现有路由
const routes = [
{
path: '/',
name: 'Login',
component: () => import(/* webpackChunkName: "about" */ '@/views/Login.vue')
},
{
path: '/index',
name: 'index',
meta: { title: '首页', noCache: true },
component: () => import(/* webpackChunkName: "about" */ '@/views/index.vue'),
children:[]
// children: [{
// path: '/test',
// name: 'test',
// component: () => import('../views/test.vue')
// }
// ]
}
]
想要在index下动态添加子路由test,特别要注意添加的子路由的path一定要把父路由的路径也带上
const routeObj = {
path: 'index/test', // 这里要把父路由的路径也带上
name: 'test',
meta: { title: '测试路由test', noCache: true },
component: () =>
import('../test/test.vue'),
}
this.$router.addRoute('index', routeObj)