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')
  );
相关推荐
暖苏4 分钟前
Vue.js第一节
前端·javascript·css·vue.js·ecmascript
jason_yang18 分钟前
watchEffect的flush属性你都用过不?
前端·vue.js
uio22 分钟前
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
前端·vue.js
萌萌哒草头将军1 小时前
⚡️⚡️⚡️ 开源了!原来 Vite 加载图片还可以这样啊!🚀🚀🚀
javascript·vue.js·react.js
_荒1 小时前
uniapp AI流式问答对话,问答内容支持图片和视频,支持app和H5
android·前端·vue.js
轻口味2 小时前
Vue 3 新特性与最佳实践之Vue 3 最佳实践总结与开发技巧
vue.js
马玉霞2 小时前
vue3的生命周期
vue.js
汪洪墩3 小时前
使用Mars3d加载热力图的时候,出现阴影碎片
开发语言·前端·javascript·vue.js·cesium
夏沫mds4 小时前
Hyperledger Fabric食品溯源
运维·vue.js·go·vue·区块链·gin·fabric
Humbunklung5 小时前
DeepSeek辅助写一个Vue3页面
前端·javascript·vue.js