O. Built-in components: Transition, KeepAlive, Teleport, Suspense
•
<Transition> animates one element or component entering and leaving
•
v-enter-from, v-enter-active, v-enter-to and the mirrored leave classes
•
name="fade" renames every class from the v- prefix to fade-
•
it reacts to v-if, v-show or a changing <component :is>, not to a data change alone
•
without a mode both elements exist at once and the layout jumps
•
TransitionGroup animates a list, requires keys, and adds the v-move class for repositioning
•
the JavaScript hooks, with :css="false" telling Vue to skip class detection
•
KeepAlive caches a toggled component's state and DOM instead of destroying it
•
cached components get onActivated and onDeactivated rather than mount and unmount
•
matching is by component name, and max evicts the least recently used
•
the node is relocated but props, provide and emitted events still follow the logical parent
•
renders in place instead, which is how a modal degrades on mobile
•
a loader returning a Promise, with optional loading and error components, delay and timeout
•
the bundle splits only when the loader is a real dynamic import
•
<Suspense> shows its fallback until every async dependency resolves, and is still experimental