位置: IT常识 - 正文

vue3 动态加载组件、动态引入组件(vuejs动态加载组件)

编辑:rootadmin
vue3 动态加载组件、动态引入组件

推荐整理分享vue3 动态加载组件、动态引入组件(vuejs动态加载组件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue动态加载组件,vue动态加载div,vue3动态加载组建到body上,vue动态加载vue文件,vuejs动态加载组件,vue3 动态加载组件,vue3 动态加载组件,vue3动态加载组建到body上,内容如对您有帮助,希望把文章链接给更多的朋友!

1.问题 在做一个用vite构建的vue3项目时,动态拉取导入.vue页面,然后控制台一直有以下提示,页面也无法渲染出来。 2.分析 根据上面的报错提示,让我们安装并使用:@rollup/plugin-dynamic-import-vars 这个插件(最终没有这个方案)。

vue3 动态加载组件、动态引入组件(vuejs动态加载组件)

Vite官方文档说需要使用Glob 导入形式,然后看了一个Glob的文档,解决了这个问题(亲测可行)。

首先需要使用特殊的import.meta.glob函数从文件系统导入多个模块:

const modules = import.meta.glob('../views/*/*.vue');

他会匹配并导入所有相关的组件:

// vite 生成的代码const modules = { './views/foo.vue': () => import('./views/foo.vue'), './views/bar.vue': () => import('./views/bar.vue')}

那么回到项目中,在home文件夹下的index.vue文件中导入custom_components文件夹下的所有.vue文件 因此,根据vite的import.meta.glob函数:就可以获得对应的custom_components文件夹下的.vue文件

const changeComponents = (e:string)=>{const link = modules[`../custom_components/${e}.vue`]console.log(link,'link')}

打印link可以看到 最后就是异步注册组件

layouts.value = markRaw(defineAsyncComponent(link))

3.最后 下面贴出完整案例,仅供参考。有更好的或者需要优化的可以提问一起探讨。

<template><div @click="changeComponents('kk')">显示kk.vue</div><div @click="changeComponents('index')">显示index.vue</div><component :is="layouts"/></template><script lang='ts' setup>const modules = import.meta.glob('../custom_components/*.vue');let layouts = ref<any>(null)const changeComponents = (e:string)=>{const link = modules[`../custom_components/${e}.vue`] layouts.value = markRaw(defineAsyncComponent(link))}</script>
本文链接地址:https://www.jiuchutong.com/zhishi/288931.html 转载请保留说明!

上一篇:黑尾塍鹬,荷兰 (© Edward van Altena/Minden Pictures)(黑尾鮰鱼)

下一篇:idea为web项目添加tomcat并配置Artifacts(idea添加web项目)

  • 稳定个人博客流量的四个办法(个人博客怎么引流)

    稳定个人博客流量的四个办法(个人博客怎么引流)

  • 什么品牌的电子狗比较好(电子狗那个品牌好)(什么品牌的电子血压计测量准确)

    什么品牌的电子狗比较好(电子狗那个品牌好)(什么品牌的电子血压计测量准确)

  • iphone怎么看微信下载的文件在哪里(iPhone怎么看微信文件)

    iphone怎么看微信下载的文件在哪里(iPhone怎么看微信文件)

  • 支付宝访客记录的查看方式(支付宝访客记录保存多久?)

    支付宝访客记录的查看方式(支付宝访客记录保存多久?)

  • 微信如何设置密码锁(微信如何设置密码付款方式)

    微信如何设置密码锁(微信如何设置密码付款方式)

  • airpod连接后 还是外放(airpod连接了但是还是外放)

    airpod连接后 还是外放(airpod连接了但是还是外放)

  • 微信留言入选为精选留言有啥用(微信留言入选是谁选的)

    微信留言入选为精选留言有啥用(微信留言入选是谁选的)

  • 物联网专用卡是什么意思(物联网专用卡是什么)

    物联网专用卡是什么意思(物联网专用卡是什么)

  • 探探是左边喜欢还是右边喜欢(探探左边喜欢还是右边)

    探探是左边喜欢还是右边喜欢(探探左边喜欢还是右边)

  • 华为账号保护有什么用(华为账号保护有什么影响)

    华为账号保护有什么用(华为账号保护有什么影响)

  • 根据b2b网站构建主体的不同可以把b2b网站分为(根据B2B网站构建主体的不同可以把B2B网站分为)

    根据b2b网站构建主体的不同可以把b2b网站分为(根据B2B网站构建主体的不同可以把B2B网站分为)

  • 手机信号线断有影响吗(手机信号线断了可以用wifi吗)

    手机信号线断有影响吗(手机信号线断了可以用wifi吗)

  • 华为home失灵怎么解决(华为home键失灵修复小技巧大全)

    华为home失灵怎么解决(华为home键失灵修复小技巧大全)

  • 华为nova6能不能无线充电(华为nova6能不能root)

    华为nova6能不能无线充电(华为nova6能不能root)

  • 苹果左滑返回怎么设置(苹果的左滑返回不灵敏)

    苹果左滑返回怎么设置(苹果的左滑返回不灵敏)

  • 声卡在主板的什么位置(主板 声卡)

    声卡在主板的什么位置(主板 声卡)

  • 快手推广审核不通过钱怎么办(快手推广审核不通过钱会退回来吗)

    快手推广审核不通过钱怎么办(快手推广审核不通过钱会退回来吗)

  • 华为怎么删掉本地音乐(华为怎么删掉本地文件)

    华为怎么删掉本地音乐(华为怎么删掉本地文件)

  • 复印机怎么扫描身份证(复印机怎么扫描身份证正反面)

    复印机怎么扫描身份证(复印机怎么扫描身份证正反面)

  • 手机微信封号怎么解除(手机微信封号怎么回事)

    手机微信封号怎么解除(手机微信封号怎么回事)

  • soul只能关注不能私聊(soul不能关注对方)

    soul只能关注不能私聊(soul不能关注对方)

  • 探探解除了关系后还能看到状态吗(探探解除关系对方还可以看到吗)

    探探解除了关系后还能看到状态吗(探探解除关系对方还可以看到吗)

  • word怎么添加红色方框(word怎么添加红色粗波浪下划线)

    word怎么添加红色方框(word怎么添加红色粗波浪下划线)

  • 简述word2013段落的对齐方式(word2013段落在哪里)

    简述word2013段落的对齐方式(word2013段落在哪里)

  • 照片打印如何去除黑底(照片打印如何去除灰底)

    照片打印如何去除黑底(照片打印如何去除灰底)

  • 手机抖音怎么添加文字(手机抖音怎么添加封面)

    手机抖音怎么添加文字(手机抖音怎么添加封面)

  • 一加7pro有5g吗(一加7pro手机是5g吗)

    一加7pro有5g吗(一加7pro手机是5g吗)

  • 鸡蛋普通发票能不能抵扣增值税呢
  • 自然人系统怎么申报个人所得税
  • 销售收入是不是营业收入
  • 本月缴纳增值税和上个月账本金额不对
  • 应收账款未收到是否要交税
  • 交易性金融资产的交易费用计入哪里
  • 开票不走公户
  • 申报增值税附表二代不出数据
  • 金税三期有什么功能
  • 一般纳税人和小微企业的区别
  • 公户转账给个人没有票
  • 关于个人所得税下列说法正确的是
  • 抵扣消费税的利益主要
  • 员工离职赔偿计入什么科目
  • 营改增后哪些费用可以抵扣
  • 个体户租房交房怎么交税
  • 电子产品企业用电量大吗
  • 先计提房租后收到发票 发票附在哪
  • 合伙人退伙资产清算需要交税吗
  • 个体户开劳务费税率
  • 土地溢价的成本包括
  • win10怎么建立多个用户
  • 为什么可供出售的金融资产是非流动资产
  • 会计报表申报期限怎么填
  • 经营负债是指什么
  • 收取违约金如何入账
  • 一次性计提折旧的政策
  • 收货款时少收几十元,分录怎么做
  • 加班工资怎么计算劳动法
  • linux系统的
  • h3cmsr3020路由器
  • winspool.drv病毒
  • 工会经费如何在网上购物吗
  • 除甲醛的净化器哪个品牌做得最好
  • ubuntu npm安装
  • 图像质量评价指标及方法 图像工程
  • python进行傅立叶变换
  • PHP实现微信无感登陆
  • 房地产开发企业应该具备哪些条件
  • mysql基本sql语句大全(基础用语篇)
  • ubuntu下安装windows
  • 小规模纳税人不超过30万怎么做账
  • 进项的加计抵减怎么算
  • 建筑安装个人所得税征收管理办法
  • 环评费用如何进项抵扣
  • 小规模纳税人技术维护费可以抵扣吗
  • 汇算清缴期间发放的工资
  • 管家婆进销存的凭证如何体现?
  • 非独立核算的分公司可以开基本户吗
  • 租赁房屋取得发票怎么开
  • 资产负债表和科目余额表怎么核对
  • 主营业务成本如何做分录
  • 收到银行季度结转怎么做
  • 利息税额计算公式
  • 基于存储过程的计算
  • 如何设置window图标大小
  • windows xp.
  • linux www服务器配置
  • linux添加新硬盘后网卡无法启动
  • 怎么解决xp不能安装软件
  • linux bye
  • 怎样设置Win XP下安装打印机驱动程序
  • fcbzmgr.exe
  • win8系统怎么打开运行
  • 用javascript
  • javascript的区别
  • grid sheet
  • cocos2dx-js
  • node.js连接mysql的数据怎么可视化
  • flex开发工具
  • javascript indexOf方法、lastIndexOf 方法和substring 方法
  • 安卓开源项目叫什么
  • 四川省网上税务局申报流程
  • 厦门市无纸化税务局官网
  • 南通国税电子税务局
  • 广东省电子税务局app
  • ca如何办理退休手续办理流程
  • 按照5%的征收率减按1.5%计算应纳税额是什么意思
  • 行政单位,比如什么单位
  • 不缴纳耕地占用税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设