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

前端流行框架Vue3教程:24.动态组件

24.动态组件

有些场景会需要在两个组件间来回切换,比如 Tab 界面

我们准备好A B两个组件ComponentA ComponentA

App.vue代码如下:

<script>
import ComponentA from "./components/ComponentA.vue"
import ComponentB from "./components/ComponentB.vue"export default {data() {// 初始化组件状态,决定首先渲染ComponentAreturn {tabComponent: 'ComponentA'}},components: {ComponentA,ComponentB}
}
</script>
<template><!-- 动态组件,根据data中的tabComponent属性值来决定渲染哪个组件 --><component :is="tabComponent"></component>
</template>

这个时候我们就可以看到页面显示:
在这里插入图片描述

现在我们加个按钮来切换组件:

<script>
// 导入组件A
import ComponentA from "./components/ComponentA.vue"
// 导入组件B
import ComponentB from "./components/ComponentB.vue"export default {data() {// 初始化组件状态,决定首先渲染ComponentAreturn {tabComponent: 'ComponentA'}},components: {// 注册组件A和组件BComponentA,ComponentB}, methods: {// 切换组件的方法changeHandle() {// 根据当前的tabComponent属性值来决定切换到哪个组件this.tabComponent = this.tabComponent === 'ComponentA' ? 'ComponentB' : 'ComponentA'}}
}
</script>
<template><!-- 动态组件,根据data中的tabComponent属性值来决定渲染哪个组件 --><component :is="tabComponent"></component><!-- 当用户点击按钮时,调用changeHandle方法来切换组件 --><button @click="changeHandle">切换组件</button>
</template>

此时,我们就可以点击按钮切换组件了

在这里插入图片描述

http://www.lryc.cn/news/2385775.html

相关文章:

  • Unity3D仿星露谷物语开发48之显示树桩效果
  • [Datagear] 实现按月颗粒度选择日期的方案
  • 漏洞检测与渗透检验在功能及范围上究竟有何显著差异?
  • DB-GPT扩展自定义Agent配置说明
  • 基于SamOutV8的序列生成模型实现与分析
  • 家政维修平台实战09:推送数据到多维表格
  • 前端框架token相关bug,前后端本地联调
  • PyQt学习系列05-图形渲染与OpenGL集成
  • 卷积神经网络(CNN)可视化技术详解:从特征学到演化分析
  • 第十天的尝试
  • WHAT - 兆比特每秒 vs 兆字节每秒
  • 业务场景中使用 SQL 实现快速数据更新与插入
  • QT之INI、JSON、XML处理
  • 微信小程序调用蓝牙API “wx.writeBLECharacteristicValue()“ 报 errCode: 10008 的解决方案
  • 【Java基础笔记vlog】Java中常见的几种数组排序算法汇总详解
  • WebRTC与RTSP|RTMP的技术对比:低延迟与稳定性如何决定音视频直播的未来
  • spring cloud alibaba Sentinel详解
  • Kafka + Flink + Spark 构建实时数仓全链路实战
  • React19源码系列之渲染阶段performUnitOfWork
  • Redis中的事务和原子性
  • 怎样把B站的视频保存到本地
  • Vue3前后端分离用户信息显示方案
  • DL00987-基于深度学习YOLOv11的红外鸟类目标检测含完整数据集
  • 黑马程序员C++2024新版笔记 第4章 函数和结构体
  • 数据仓库,扫描量
  • Day126 | 灵神 | 二叉树 | 层数最深的叶子结点的和
  • Python实例题:人机对战初体验Python基于Pygame实现四子棋游戏
  • Vue3性能优化: 大规模列表渲染解决方案
  • 笔记:将一个文件服务器上的文件(一个返回文件数据的url)作为另一个http接口的请求参数
  • 【RocketMQ 生产者和消费者】- 生产者启动源码 - MQClientInstance 定时任务(4)