iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >vue3动态加载组件及动态引入组件怎么使用
  • 495
分享到

vue3动态加载组件及动态引入组件怎么使用

2023-07-05 15:07:35 495人浏览 安东尼
摘要

本篇内容介绍了“vue3动态加载组件及动态引入组件怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.问题在做一个用vite构建的Vu

本篇内容介绍了“vue3动态加载组件及动态引入组件怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1.问题

在做一个用vite构建的Vue3项目时,动态拉取导入.vue页面,然后控制台一直有以下提示,页面也无法渲染出来。

vue3动态加载组件及动态引入组件怎么使用

2.分析

根据上面的报错提示,让我们安装并使用:@rollup/plugin-dynamic-import-vars 这个插件(最终没有这个方案)。

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文件

vue3动态加载组件及动态引入组件怎么使用

因此,根据vite的import.meta.glob函数:就可以获得对应的custom_components文件夹下的.vue文件

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

打印link可以看到

vue3动态加载组件及动态引入组件怎么使用

最后就是异步注册组件

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>

“vue3动态加载组件及动态引入组件怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: vue3动态加载组件及动态引入组件怎么使用

本文链接: https://www.lsjlt.com/news/352838.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue3动态加载组件及动态引入组件怎么使用
    本篇内容介绍了“vue3动态加载组件及动态引入组件怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.问题在做一个用vite构建的vu...
    99+
    2023-07-05
  • vue3动态加载组件以及动态引入组件详解
    目录1.问题2.分析3.最后总结1.问题 在做一个用vite构建的vue3项目时,动态拉取导入.vue页面,然后控制台一直有以下提示,页面也无法渲染出来。 2.分析 根据上面的报错...
    99+
    2023-03-23
    vue 动态加载组件 vue加载组件 vue3动态加载组件
  • vue3动态组件怎么使用
    这篇文章主要介绍“vue3动态组件怎么使用”,在日常操作中,相信很多人在vue3动态组件怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue3动态组件怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-07-06
  • vue3动态组件使用详解
    目录vue2vue3markRow:标记一个对象,使其不能成为一个响应式对象。toRaw:将响应式对象(由 reactive定义的响应式)转换为普通对象。shallowRef:只处理...
    99+
    2023-02-27
    vue3中动态组件 vue3动态加载组件 vue3动态添加组件
  • vue3动态组件如何使用
    这篇“vue3动态组件如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue3动态组件如何使用”文章吧。问题:为什么v...
    99+
    2023-07-05
  • Angular.js怎么实现动态加载组件
    小编给大家分享一下Angular.js怎么实现动态加载组件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言有时候需要根据URL...
    99+
    2022-10-19
  • VUE3+vite项目中动态引入组件与异步组件的详细实例
    目录一、全量注册,随用随取1. 把项目中所有vue文件注册成异步组件。2. 获取组件3. 参考如下二、使用@rollup/plugin-dynamic-import-vars插件 1...
    99+
    2022-11-13
  • vue如何动态加载组件详解
    目录使用场景:需要动态导入组件的页面核心组件的代码:使用场景:总结使用场景: 项目中需要我们根据不同的业务需求呈现不同的业务场景,如果业务类型简单还好,直接全部引入判断即可,但随着我...
    99+
    2022-11-13
    vue 组件动态加载 vuejs动态加载组件 vue 加载组件
  • Vue动态组件与异步组件怎么使用
    这篇“Vue动态组件与异步组件怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue动态组件与异步组件怎么使用”文章吧...
    99+
    2023-07-05
  • vue动态组件component怎么使用
    本篇内容介绍了“vue动态组件component怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、component如何实现动态组件...
    99+
    2023-06-21
  • angular9中如何实现组件动态加载
    这篇文章将为大家详细讲解有关angular9中如何实现组件动态加载,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。指令的创建在添加组件之前,先要定义一个锚点来告诉 Angular 要把组件插入到什么地方。 ...
    99+
    2023-06-14
  • 基于vue2.0动态组件及render怎么用
    小编给大家分享一下基于vue2.0动态组件及render怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!如下所示:<t...
    99+
    2022-10-19
  • vue3中怎么通过遍历传入组件名称动态创建多个component组件
    这篇文章主要介绍“vue3中怎么通过遍历传入组件名称动态创建多个component组件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue3中怎么通过遍历传入组件名称动态创建多个component组...
    99+
    2023-07-05
  • Vue中动态组件怎么用
    这篇文章将为大家详细讲解有关Vue中动态组件怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。动态组件我相信大部分在开发的过程中都会用到,当我们需要在不同的组件之间进行状态切换时,动态组件可以很好的满足...
    99+
    2023-06-21
  • vue3.0+vite2实现动态异步组件懒加载
    目录创建一个vite项目 创建组件 创建一个vite项目 性能决定成败;vite确实快; cmd 命令行(默认你已经安装了node & npm),执行npm init @v...
    99+
    2022-11-12
  • vue3中通过遍历传入组件名称动态创建多个component组件
    目录背景解决问题原因:背景 在 vue3 中,如果使用 component,可以动态加载一个组件,例如 <!-- 直接创建 --> <component :i...
    99+
    2023-03-23
    vue3动态创建多个component 组件 vue3 component 组件
  • Vue中的动态组件是什么及怎么用
    这篇“Vue中的动态组件是什么及怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue中的动态组件是什么及怎么用”文章吧...
    99+
    2023-07-04
  • 浅析Vue3动态组件怎么进行异常处理
    Vue3动态组件怎么进行异常处理?下面本篇文章带大家聊聊Vue3 动态组件异常处理的方法,希望对大家有所帮助!【相关推荐:vuejs视频教程】动态组件有两种常用场景:一是动态路由:// 动态路由 export const asyncRout...
    99+
    2023-05-14
    前端 Vue.js JavaScript
  • vue3怎么使用defineAsyncComponent与component标签实现动态渲染组件
    本文小编为大家详细介绍“vue3怎么使用defineAsyncComponent与component标签实现动态渲染组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue3怎么使用defineAsyncComponent与compone...
    99+
    2023-07-05
  • VB.NET中怎么使用动态数组控件
    本篇文章给大家分享的是有关VB.NET中怎么使用动态数组控件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在form的头部定义一个公共的ArrayList类型的变量 ...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作