Un componente se suspende cuando lee una promesa que aún no se ha resuelto. React sube hasta el límite de Suspense más cercano, muestra su fallback hasta que la promesa se resuelve y luego renderiza el contenido real. En React 19 lees una promesa con el hook use, normalmente creada en un Server Component o en una caché y pasada hacia abajo. Suspense coordina los estados de carga; no trae datos por sí mismo.
Por qué lo preguntan los entrevistadores
Mucha gente sabe describir Suspense como un envoltorio para un spinner. El entrevistador quiere saber si entiendes el mecanismo, que suspenderse es un modelo de lanzar y reintentar, y el detalle importante de que quien trae los datos es el framework o la librería. También comprueba que sabes dónde colocar los límites para que un panel lento no deje en blanco una página entera.
Cómo estructurar tu respuesta
- Di qué significa suspenderse y qué hace el límite.
- Nombra de dónde debe venir la promesa y de dónde no debe venir.
- Explica la colocación de los límites y el streaming.
- Menciona el riesgo de cascada de peticiones y cómo lo evitas.
Ejemplo de respuesta
Suspense es una primitiva de coordinación, no una capa de datos. Cuando un componente lee una promesa que no se ha resuelto, se suspende, React busca el límite más cercano por encima, renderiza ese fallback y reintenta el subárbol cuando la promesa se resuelve. En React 19 la forma de leerla es el hook use, y la regla importante es que la promesa no puede crearse durante el render del componente que llama a use, porque si no creas una promesa nueva en cada intento y nunca se resuelve. Así que en la práctica la promesa arranca en un Server Component o sale de una caché y se pasa hacia abajo. En el lado del servidor eso encaja con el streaming: la cáscara sale de inmediato y las secciones más lentas van llegando conforme aterrizan sus datos. Para colocar los límites intento envolver la cosa más pequeña para la que un usuario aceptaría ver un esqueleto, de modo que un panel lento de recomendaciones no retenga los detalles del producto. La trampa son los await secuenciales creando una cascada, así que lanzo juntas las peticiones independientes antes de esperarlas.
¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.
Mira cómo funcionaPreguntas de seguimiento que puedes esperar
- ¿Por qué no deberías crear la promesa dentro del componente que llama a use?
- ¿Cómo interactúan los límites de Suspense con el renderizado en servidor con streaming?
- ¿Cómo evitas una cascada de peticiones entre componentes anidados?
Más preguntas para Desarrollador React
Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.
Predecir mis preguntas