<Suspense> 是一个内置组件,用于协调其组件树中的 async dependencies — 它显示一个 fallback(加载 UI),直到所有嵌套的异步操作完成,然后显示真实内容。它消除了手动 isLoading 的样板代码。
两个 slots
vue
<template>
<Suspense>
<template #default>
<UserDashboard /> <!-- a component with async setup -->
</template>
<template #fallback>
<LoadingSpinner /> <!-- shown while #default is resolving -->
</template>
</Suspense>
</template>
