vue-element-admin asyncRoutes 动态路由怎么实现按需异步js模块加载?

1bqhqjot  于 3个月前  发布在  其他
关注(0)|答案(2)|浏览(167)

Question(提问)

Steps to reproduce(问题复现步骤)
Screenshot or Gif(截图或动态图)
Other relevant information(格外信息)
  • Your OS:
  • Node.js version:
  • vue-element-admin version:
qvtsj1bj

qvtsj1bj1#

请看案例

// 该路由对应页面的 组件 :方案1(同步)
// component: constantRouterComponents[item.component || item.key],
// 该路由对应页面的 组件 :方案2 (动态加载)
component: (constantRouterComponents[item.component || item.key]) || (() => import(`@/views/${item.component}`)),

export function generateMenu(routes, data) {
  data.forEach(item => {
    const menu = {
      path: item.path,
      component: item.component === 'Layout' ? Layout :  (() => import(`@/views/${item.component}`)),
      hidden: item.visible !== '0',
      children: [],
      name: item.menuName,
      meta: {
        title: item.title,
        icon: item.icon,
        noCache: true
      }
    }
    if (item.children) {
      generateMenu(menu.children, item.children)
    }
    routes.push(menu)
  })
}

OR

component: (resolve) => require(['@/views' + view], resolve)
axzmvihb

axzmvihb2#

我一开始用得vue-admin-template模板 然后在要把路由列表给后台 调接口根据权限返回对应的路由列表 请问有没用一个好的案例啊 来自一位刚接触前端没多久的菜鸟提问 请大佬们解惑。

相关问题