使用component: () => import(`@/views${a.component}`)方式取vue的组件路径
其中@/views不能使用${}来获取,必须如下操作
不然就会报错:
Error: Cannot find module '@/views/home/c.vue'
at lazy ^.*$ namespace object:11:1
后端返回的路由对象
const asyncRouterMap={
pid: 'home',
name: 'c',
path: '/c',
component: "/home/c.vue",
children: []
}
前端解析添加动态路由
const a=asyncRouterMap[0]
console.log(a);
const c= {
path: a.path,
name: a.name,
component: () => import(`@/views${a.component}`) //必须是@/views为手动填写
}
router.addRoute("home", c)//添加单个