之前的动态路由是可以的, 今天突然不行了,不知道为什么。在此简单记录下解决方法
// 遍历后台传来的路由字符串,转换为组件对象
function filterAsyncRouter(asyncRouterMap) {
return asyncRouterMap.filter(route => {
if (route.component) {
// Layout组件特殊处理
if (route.component === 'Layout') {
route.component = Layout
} else {
route.component = loadView(route.component)
}
}
if (route.children != null && route.children && route.children.length) {
route.children = filterAsyncRouter(route.children)
}
return true
})
}
export const loadView = (view) => { // 路由懒加载
// return () => import(`@/views/${view}`)//不知道为什么不行
return resolve => require([`@/views/${view}`], resolve)//可以解决
}