vite动态导入页面动态import组件实现方式

 更新时间:2026年04月29日 09:19:18   作者:yangliweigauguagua  
本文总结了在使用Vite进行动态导入页面和组件时遇到的问题,由于Vite与Webpack在处理动态import方面有所不同,需要采用特殊方法,文章强调了从后台获取路由表并动态引入组件的实践方法

vite动态导入页面动态import组件

在做权限的时候

从后台拉路由表,然后动态引入组件,之前webpack是可以直接用的,但是vite不行,需要用特殊的方法

//引入所有views下.vue文件
const modules = import.meta.glob("../views/**/**.vue");

/**
 * 解析路由表
 * @param routerMap 后台请求的路由表
 * @returns 系统路由
 */
export const routerFilterFunc = (routerMap: RouterItem[]) => {
  const arr: RouterItem[] = [];
  routerMap.forEach(item => {
    const obj: RouterItem = {
      ...item,
      beforeComponent: item.component
    };
    if (obj.children) {
      obj.children = routerFilterFunc(obj.children);
    }
    if (item.component == "Layout") {
      obj.component = RouterView;
    } else {
      const component = modules[`../views/${obj.component}.vue`] as any;
      if (component) {
        obj.component = modules[`../views/${obj.component}.vue`];
      } else {
        obj.component = () => import("@/views/404.vue");
      }
    }
    arr.push(obj);
  });
  return arr;
};

这是

import.meta.glob("../views/**/**.vue")

获取的内容

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解vue的数据binding绑定原理

    详解vue的数据binding绑定原理

    这篇文章主要介绍了详解vue的数据binding原理介绍,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Vue报错Component name"Home"should always be multi问题

    Vue报错Component name"Home"should always be mult

    这篇文章主要介绍了Vue报错Component name"Home"should always be multi问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 关于Pinia状态管理解读

    关于Pinia状态管理解读

    这篇文章主要介绍了Pinia状态管理解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • vue3容器布局和导航路由实现示例

    vue3容器布局和导航路由实现示例

    这篇文章主要为大家介绍了vue3容器布局和导航路由实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • vue data中如何获取使用store中的变量

    vue data中如何获取使用store中的变量

    这篇文章主要介绍了vue data中如何获取使用store中的变量,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • vue3新增Teleport的问题

    vue3新增Teleport的问题

    这篇文章主要介绍了vue3新增Teleport的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • vue实现伸缩菜单功能

    vue实现伸缩菜单功能

    这篇文章主要为大家详细介绍了vue实现伸缩菜单功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • Vue 实现前端权限控制的示例代码

    Vue 实现前端权限控制的示例代码

    这篇文章主要介绍了Vue 实现前端权限控制的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Vue3实现动态面包屑的代码示例

    Vue3实现动态面包屑的代码示例

    这篇文章主要给大家介绍一下Vue3动态面包屑是如何实现的,实现思路又是什么,以及发给大家介绍一下面包屑的功能,文章通过代码示例介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • Vue3中Composition API的原理与实战指南

    Vue3中Composition API的原理与实战指南

    Composition API为开发者提供了一种全新的组织组件逻辑的方式,本文将深入探讨Vue3中Composition API的实际应用,帮助开发者掌握这一强大工具
    2025-07-07

最新评论