Vue学习记录之十 之 Teleport传送组件/keep-alive缓存组件/transition动画组件

devtools/2024/10/22 16:27:15/

一、Teleport

1、Teleport的功能

Teleport 是一个内置的组件,它允许你将某个组件或元素的渲染位置“传送”到 DOM 中的其他位置,而不是跟随其父组件的层级进行渲染。

通常情况下,Vue 组件的 DOM 节点会按照其父组件的结构被插入到 DOM 树中。然而,有时我们希望某些元素(比如模态框、通知、悬浮菜单等)出现在页面的不同位置,而不受其父组件的限制。Teleport 就是为了解决这个问题而引入的。传递过去的html代码是独立的,不能插入的原代码中

2、典型的使用场景

  1. 模态框(Modal): 模态框通常需要在页面的根节点上进行渲染,以避免被其他 CSS 样式或布局限制。
  2. 通知(Notification): 通知一般出现在页面的顶部或角落,不应受到其父组件位置的限制。
  3. 浮动元素(Dropdown/Menu): 这些元素可能需要在视觉上脱离它们的父组件,避免因 overflow 等样式被剪裁。

3、参数介绍

Teleport 的参数
to: 接受一个 CSS 选择器或 DOM 元素,指定要传送到的目标位置。例如:
to="body":将内容传送到 <body>。
to="#app":将内容传送到带有 id="app" 的元素中。
disabled: 如果设为 true,则 Teleport 组件会取消传送,内容会在原地渲染。<teleport to="" :disabled="true">代码或者是组件
</teleport>

4、实例:

<template>
<div><button @click="showModal = true">Open Modal</button><!-- 使用 Teleport 将模态框传送到 body 标签内, 可以to 到id,class,元素选择器等等 --><teleport to="body"><!--内部也可以是个组件--><div v-if="showModal" class="modal"><p>This is a modal!</p><button @click="showModal = false">Close</button></div></teleport>
</div>
</template><script setup lang="ts">import {ref} from 'vue'const showModal = ref(false)</script><style lang="scss" scoped>.modal {position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%

http://www.ppmy.cn/devtools/125412.html

相关文章

探索Spring Boot在医疗病历B2B交互中的潜力

第2章 设计技术与开发环境 2.1 相关技术介绍 2.1.1 B/S模式分析 C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。客户应用程序是系统中用户与数据组件交互。服务器程序负责系统资源&#xff0c;如管理信息数据库的有效管理&…

电商数据淘宝/京东/1688商品SKU数据采集||电商API接口

电商数据采集接口数据分析是一个涉及多个步骤的过程&#xff0c;以下是一个详细的指南&#xff1a; 一、数据采集接口的选择与接入 选择合适的电商数据采集接口&#xff1a; 根据需求选择提供所需数据的电商平台接口。考虑接口的稳定性、数据更新频率及准确性。 接口接入准备&…

安宝特方案 | AR技术在轨交行业的应用优势

随着轨道交通行业不断向智能化和数字化转型&#xff0c;传统巡检方式的局限性日益凸显。而安宝特AR眼镜以其独特的佩戴方式和轻便设计&#xff0c;为轨道交通巡检领域注入了创新活力&#xff0c;提供了全新的解决方案。 01 多样化佩戴方法&#xff0c;完美适应户外环境 安宝特…

Redis-分布式锁

手写分布式锁 qa redis除了做缓存&#xff0c;还有什么用法 redis 单机与集群的cap分析 锁的种类 一个分布式锁需要满足的条件和刚需 独占性&#xff1a;任何时间只能有一个线程占有高可用&#xff1a; 在redis集群环境下&#xff0c;不能因为一个节点挂了而出现获取锁和释放…

C++ include头文件的顺序以及双引号““和尖括号<>的区别

本文章进一步详细解释 #include 的头文件包含机制&#xff0c;包括搜索路径的处理、双引号 "" 和尖括号 <> 在不同环境中的使用差异&#xff0c;以及它们的底层机制。 1. 头文件包含机制和搜索路径详解 #include 是一个预处理指令&#xff0c;用于在编译前将…

Git 工作区、暂存区和仓库

在使用 Git 进行版本控制时&#xff0c;工作区、暂存区和仓库概念的详细解释&#xff1a; 1. 工作区&#xff08;Working Directory&#xff09; 工作区是你在计算机上实际编辑文件的地方。当你克隆一个 Git 仓库或在现有目录中初始化一个 Git 仓库时&#xff0c;这个目录就是…

vue 请求竞态 中断请求 解决切换表格数据,数据发生错乱

//1&#xff0c;声明缓存请求的集合 const pendingRequest new Map(); //2,请求url和method生成key const generateRequestKey <T extends AxiosRequestConfig>(config: T) > {const { method, url } configreturn [method, url].join("&") } //3,缓…

【Android】在安卓中使用 `mobile-ffmpeg` 压缩后的视频,浏览器在线播放提示“没有找到支持的视频格式和 MIME 类型”的解决方案

在安卓中使用 mobile-ffmpeg 压缩后的视频&#xff0c;浏览器在线播放提示“没有找到支持的视频格式和 MIME 类型”的解决方案 你可能在安卓开发中使用了 mobile-ffmpeg 进行视频压缩&#xff0c;而当你尝试在浏览器中在线播放压缩后的视频时&#xff0c;看到提示&#xff1a;…