jtwang7 / Vue-Note

Vue 学习笔记
0 stars 0 forks source link

Vue3 异步组件 <suspense> #17

Open jtwang7 opened 2 years ago

jtwang7 commented 2 years ago

Vue3 异步组件

参考文章:Suspense

✅ 什么是异步组件?

满足上述条件的组件,我们可将其视为异步组件,Vue 中异步组件通常<suspense> 一同使用: 异步组件在默认情况下是可挂起的。这意味着如果它在父链中有一个 <suspense>,它将被视为该 <suspense> 的异步依赖,加载状态由 <suspense> 控制。

❇️ 注意:是在父链组件(父组件及以上)上用 <suspense> 包裹异步组件,而不是包裹在异步组件自身的模板内。

<suspense> 特性

它们都只接收一个直接子节点。default 插槽里的节点会尽可能展示出来。如果不能,则展示 fallback 插槽里的节点。另一个触发 fallback 的方式是让后代组件从 setup 函数中返回一个 Promise。通常这是通过 async 实现的,而不是显式地返回一个 Promise。