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

Vue3 Suspense 和 defineAsyncComponent 结合使用方法

Suspense用于协调对组件树中嵌套的异步依赖的处理。

defineAsyncComponent:定义一个异步组件,它在运行时是懒加载的。参数可以是一个异步加载函数,或是对加载行为进行更具体定制的一个选项对象。

异步组件的好处:使用 import() 函数式模式引入的组件,打包的时候都会做一个代码拆解,会打包成单独的文件,而不会打包到主包中,当使用的时候在进行加载,这样可以减少首屏加载时间,优化用户体验。

异步组件 HomeView.vue:

<script setup lang="ts">// 这里模拟异步方法await new Promise((resolve)=>{setTimeout(() => {resolve('接口返回成功')}, 1000);})
</script><template><div>我是异步组件</div>
</template> 

页面默认显示 “加载中...” ,当异步组件的异步方法返回成功,页面显示异步组件的内容,代码如下:

<script setup lang="ts">import { defineAsyncComponent } from "vue";const HomeView=defineAsyncComponent(()=>import('./views/HomeView.vue'))
</script><template><Suspense><template #default><HomeView></HomeView></template><template #fallback><div>加载中...</div></template></Suspense>
</template>

上述案例可用于实现大型项目的骨架屏效果,提升用户体验。

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

相关文章:

  • GitHub中Codespace怎么使用;LLM模拟初始化;MLP:全连接神经网络的并行执行
  • 【rh】rh项目部署
  • VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection
  • 结构开发笔记(三):solidworks软件(二):小试牛刀,绘制一个立方体
  • LLM 量化算法AutoRound 0.3 发布及原理浅析
  • 汽车免拆诊断案例 | 2013款北京现代悦动车发动机偶尔无法起动
  • React、AntD,封装动态表单
  • 【Linux基础】Linux中的开发工具(3)--make/makefile和git的使用
  • 过滤了字母、数字、_、$的webshell命令执行技巧
  • python-A+B again
  • C语言—函数递归
  • 结构开发笔记(四):solidworks软件(三):绘制36x36方块摄像头示意体
  • 【机器学习】Caltech-101的基本概念和使用方法以及Caltech-101和ImageNet的联系和区别
  • mysql Ubuntu安装与远程连接配置
  • c语言中比较特殊的输入格式
  • 远程命令行控制SSH
  • 钢铁百科:A572Gr60和SA572Gr60材质分析、A572Gr60和SA572Gr60简介
  • 一次sql请求,返回分页数据和总条数
  • 2.5 pyautogui 实现微信自动回复
  • 观存储历史,论数据未来
  • linux:对目录的操作
  • 详解Redis 高可用的方式 Redis Cluster
  • $clog2(1)=0
  • 开发学习日记1
  • 孙宇晨领航波场TRON:引领数字资产迈向崭新纪元
  • python运维(twenty-four day)
  • Eureka原理实践
  • Ant-Design-Vue快速上手指南+排坑
  • mysql5.7安装
  • UE开发中的设计模式(三) —— 对象池模式