当前位置: 首页 > news >正文

vue3动态加载组件

如何在Vue3中动态加载组件

需求根据下拉框的值,加载不同的组件
新建文件aaa.vue,bbb.vue

<template><div class="container">我是bbbb组件</div>
</template><script lang="ts" setup name="taskPush">
</script>
<style scoped lang="less">
</style>

aaa组件

<template><div class="container">我是aaa组件</div>
</template><script lang="ts" setup name="taskPush">
</script>
<style scoped lang="less">
</style>

新建.ts文件

import { shallowRef } from 'vue';
export default function () {const asyncComponent: any = shallowRef({}); //渲染的表单组件(异步加载)/*** 获取calssify下的某一个组件* @param moduleName 组件名称*/const getFormComponents = (moduleName: string) => {import(`./${moduleName}.vue`).then((module: any) => {asyncComponent.value = module.default;});};return {getFormComponents,asyncComponent};
}

在父组件中使用

<template><div class="container"><el-selectv-model="value"placeholder="Select"size="large"style="width: 240px"@change='changeCom'><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"/></el-select><component:is="asyncComponent"ref="componentRef"></component></div>
</template><script lang="ts" setup >
import { ref } from 'vue'
import getModuleList from "./getModuleList";
const { getFormComponents, asyncComponent } = getModuleList();
const value = ref('')const options = [{value: 'aaa',label: '组件',},{value: 'bbb',label: '组件bbb',},
]
const changeCom = (e:any)=>{}</script>
<style scoped lang="less">
</style>
http://www.lryc.cn/news/512193.html

相关文章:

  • 12.29 redis缓存一致性
  • SqlSugar配置连接达梦数据库集群
  • 评分模型在路网通勤习惯分析中的应用——提出问题(1)
  • 使用 OpenCV 绘制线条和矩形
  • npm 切换镜像源
  • CSS(四)display和float
  • MMaudio AI:如何通过 AI 实现精准的视频到音频合成
  • SQL进阶技巧:如何分析双重职务问题?
  • OpenCV相机标定与3D重建(37)计算两幅图像之间单应性矩阵(Homography Matrix)的函数findHomography()的使用
  • Nacos配置管理+共享配置、配置热更新
  • asp.net core系统记录当前在线人数
  • 秒杀场景的设计思考
  • 快速掌握Haproxy原理架构
  • 基于Centos7.X系统端口占用处理
  • MySQL的索引失效的原因有那些
  • Java重要面试名词整理(十):Kafka
  • 内置ALC的前置放大器D2538A/D3308
  • 04-微服务02
  • Java中的this关键字详解:深入理解与应用
  • 2、C#基于.net framework的应用开发实战编程 - 设计(二、四) - 编程手把手系列文章...
  • 设置首选网络类型以及调用Android框架层的隐藏API
  • “Gold-YOLO:基于聚合与分发机制的高效目标检测新范式”
  • 神经网络-AlexNet
  • Hutool 发送 HTTP 请求的几种常见写法
  • 【Linux】进度条
  • 【zookeeper核心源码解析】第四课:客户端与服务端读写的io核心流程
  • 强化学习蘑菇书笔记
  • 《机器学习》——线性回归模型
  • Linux(Centos 7.6)网卡信息没有了问题处理
  • WEB攻防-通用漏洞-文件上传-js验证-MIME验证-user.ini-语言特征