Vue3: Suspense异步加载组件

在我们日常开发中,有些组件里面加载非常慢,导致我们路由跳转的时候回出现卡顿情况。

这个时候我们可以使用异步组件。

Suspense

IconParkSelect 组件因为要读取文件,会有点慢,所以只用异步的方式加载。

复制代码
 <Suspense>
        <IconParkSelect
          v-model="currentSelectIcon"
          :visible="iconVisible"
          @close="closeIconFormModalVisible"
          @cancel="closeIconFormModalVisible"
          @ok="insertIconToItem"
        />
        <!-- 在 #fallback 插槽中显示 "正在加载中" -->
        <template #fallback> Loading...</template>
      </Suspense>

Suspense 有两个插槽,当异步组件没有加载完成时候会先选择 fallback 插槽数据。

然后使用异步的方式引入组件。

复制代码
  import { defineAsyncComponen } from 'vue';

  // 异步获取图标库
  const IconParkSelect = defineAsyncComponent(
    () => import('@/components/common/IconParkSelect.vue')
  );
相关推荐
ttod_qzstudio18 分钟前
Vue 3 中 toRaw 的取舍之道:以 Babylon.js 3D 开发为例
vue.js·babylonjs
Mr Xu_1 小时前
Vue3 + Element Plus 实战:App 版本管理后台——动态生成下载二维码与封装文件上传
前端·javascript·vue.js
比特森林探险记1 小时前
Vue基础语法与响应式系统详解
前端·javascript·vue.js
zihan03212 小时前
element-plus, el-table 表头按照指定字段升降序的功能实现
前端·vue.js·状态模式
三翼鸟数字化技术团队2 小时前
watchEffect的两种错误用法
前端·javascript·vue.js
我是伪码农4 小时前
Vue 1.28
前端·javascript·vue.js
利刃大大4 小时前
【Vue】scoped作用 && 父子组件通信 && props && emit
前端·javascript·vue.js
-凌凌漆-4 小时前
【Vue】Vue3 vite build 之后空白
前端·javascript·vue.js
qq_336313934 小时前
javaweb-Vue3
前端·javascript·vue.js
Mr Xu_4 小时前
UniApp 实战:深度解析 App 端自动检测与静默更新(含强制更新)
javascript·vue.js·uni-app