--- title: Suspense Overrides Async Component Loading and Error Options impact: MEDIUM impactDescription: Async component loading/error options are ignored under a parent Suspense, leading to missing spinners and error UIs type: gotcha tags: [vue3, suspense, async-components, loading, error-handling] --- # Suspense Overrides Async Component Loading and Error Options **Impact: MEDIUM** - When an async component renders inside a parent ``, its `loadingComponent`, `errorComponent`, `delay`, and `timeout` options do not run. The parent Suspense controls loading and error UX instead. ## Task Checklist - [ ] Confirm whether the async component is inside a `` boundary - [ ] Use `suspensible: false` when the component must manage its own loading/error UI - [ ] Or move loading/error UI to the parent `` fallback and an error boundary (`onErrorCaptured`) - [ ] Provide a retry path for failed loads **Incorrect:** ```vue ``` **Correct (component handles its own states):** ```vue ``` **Correct (parent Suspense owns loading/error UI):** ```vue ```