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

Vue内置组件Teleport和Suspense

一. Vue内置组件Teleport

    1. 认识Teleport( teleport:允许我们把组件的模板渲染到特定的元素上)
    • 1.1. 在组件化开发中,我们封装一个组件A,在另外一个组件B中使用

      • 组件A中template的元素,会被挂载到组件B中template的某个位置;
      • 最终我们的应用程序会形成一颗DOM树结构;
    • 1.2. 某些情况下,希望组件不是挂载在这个组件树上,可能是移动到Vue app之外的其他位置;

      • 比如移动到body元素上,或者我们有其他的div#app之外的元素上;
      • 这种场景可以通过teleport来完成;
    • 1.3.Teleport的解释

      • 它是一个Vue提供的内置组件,类似于react的Portals;
      • teleport翻译过来是心灵传输、远距离运输的意思:
        • 它有两个属性:
          • to: 指定将其中的内容移动到的目标元素,可以使用选择器
          • disabled: 是否禁用teleport的功能
    • 1.4. 多个teleport

      • 将多个teleport应用到同一个目标上(to的值相同), 那么这些目标会进行合并:
        <template><div class="app"><div class="hello-word"><p class="content"><teleport to="body"><hello-word></hello-word></teleport><teleport to="#abc"><hello-word></hello-word></teleport><teleport to="#abc"><h2>哈哈哈哈</h2></teleport></p></div></div></template>
      

      在这里插入图片描述

二. Vue内置组件Suspense

  • Suspense:异步组件

  • 1.1. 目前Suspense显示的是一个实验性的特性,API随时可能会修改

  • 1.2. Suspense是一个内置的全局组件,该组件有两个插槽:

    • default: 如果default可以显示,默认显示default的内容
    • fallback: 如果default无法显示,则显示fallback插槽的内容(fallback中文翻译:应急方案)
      <template><div class="app"><!-- app在解析这个组件,需要从服务器下载下来在解析这个组件,他需要有一个下载的过程,还没下载下来需要显示一个默认的组件,--><!-- fallback:应急方案 在文件还没加载过来或者还没下载下来时候显示这个插槽内容  --><suspense><template #default><async-home></async-home></template><template #fallback><h2>Loading </h2></template></suspense></div></template><script setup>import { defineAsyncComponent } from 'vue';const AsyncHome = defineAsyncComponent(() => import("./AsyncHome.vue"))</script>
    
http://www.lryc.cn/news/2398517.html

相关文章:

  • Java网络编程实战:TCP/UDP Socket通信详解与高并发服务器设计
  • vue+threeJs 绘制3D圆形
  • Silky-CTF: 0x02靶场
  • Kafka 的优势是什么?
  • 基于FPGA + JESD204B协议+高速ADC数据采集系统设计
  • 微服务中引入公共拦截器
  • Ubuntu20.04 LTS 升级Ubuntu22.04LTS 依赖错误 系统崩溃重装 Ubuntu22.04 LTS
  • C++11:unique_ptr的基本用法、使用场景和最佳使用指南
  • 测量3D翼片的距离与角度
  • 零基础学习计算机网络编程----socket实现UDP协议
  • 谷歌地图2022高清卫星地图手机版v10.38.2 安卓版 - 前端工具导航
  • RAG的ETL Pipeline源码解读
  • 杭州白塔岭画室怎么样?和燕壹画室哪个好?
  • Linux文件系统:从VFS到Ext4的奇幻之旅
  • 5月底 端午节
  • 为何选择Spring框架学习设计模式与编码技巧?
  • 软件评测师 综合测试 真题笔记
  • 晶台光耦在手机PD快充上的应用
  • JS对数据类型的检测
  • llama.cpp:纯 C/C++ 实现的大语言模型推理引擎详解一
  • 【亲测有效 | Cursor Pro每月500次快速请求扩5倍】(Windows版)Cursor中集成interactive-feedback-mcp
  • BaseTypeHandler用法-笔记
  • 鸿蒙OSUniApp集成WebGL:打造跨平台3D视觉盛宴#三方框架 #Uniapp
  • 华为盘古 Ultra MoE 模型:国产 AI 的技术突破与行业影响
  • Payload CMS:开发者优先的Next.js原生开源解决方案,重新定义无头内容管理
  • CRM管理软件的数据可视化功能使用技巧:让数据驱动决策
  • linux批量创建文件
  • 颠覆传统!单样本熵最小化如何重塑大语言模型训练范式?
  • 华为数据之道 精读——【173页】读书笔记【附全文阅读】
  • 数据库OCP专业认证培训