vue动态路由import异步加载组件,找不到module的问题

问题的由来:

webpack分模块打包导致import路径src少一级目录(ps:路径是由后端提供的)
在这里插入图片描述

解决办法:

if (localJsonRouter.listenRouter) {//把后端的路径信息储存到sessionStorage
    listenRouter = localJsonRouter.listenRouter;
    listenRouter.forEach(itemOne => {
      itemOne.component = Layout;
      itemOne.children.forEach(itemTwo => {
        //把listen级目录拆出来放在外层便于webpack编译该目录下的模块
        let urlPath = itemTwo.vueUrl.substr(8);
        //模板字符串动态拼接组件路径(ps:@指向src该目录下必须有一级目录,不然异步加载组件找不到module)
        itemTwo.component = () => import(`@/listen/${urlPath}.vue`);
      });
    });
  } else {
    listenRouter = [];
  }
发布了8 篇原创文章 · 获赞 6 · 访问量 1452

猜你喜欢

转载自blog.csdn.net/likuntao123/article/details/100697749
今日推荐