Matriz de versiones vinculada a Expo SDK 57. Reanimated 4 ejecuta animaciones en el hilo UI; Gesture Handler mueve el reconocimiento de toques a nativo para que los pans se mantengan a 60fps. Instálalos como pareja. Para shared values, springs y gestos compuestos, consulta react-native-reanimated 4 y react-native-gesture-handler.
## Verificación de instalación de Reanimated + RNGH- [ ] npx expo install react-native-reanimated react-native-gesture-handler- [ ] package.json muestra ~4.0.0 y ~2.28.0 (vía expo install)- [ ] babel.config.js - reanimated/plugin es el ÚLTIMO plugin- [ ] GestureHandlerRootView envuelve el layout raíz- [ ] npx expo start --clear después del cambio de babel- [ ] eas build --profile development después del cambio de versión nativa- [ ] Pan gesture probado en dispositivo físico (no solo simulador)- [ ] npx expo-doctor pasa
// ✅ Componentes y estilos workletimport Animated, { useAnimatedStyle, useSharedValue } from "react-native-reanimated";// ❌ No mezcles para UI impulsada por gestosimport { Animated } from "react-native";
Plugin de Babel no es el último - Los worklets fallan; las animaciones se atascan en el hilo JS. Solución: Mueve react-native-reanimated/plugin al final de plugins; npx expo start --clear.
Fijar manualmente versiones - npm install react-native-reanimated@latest rompe el ABI nativo. Solución: Siempre usa npx expo install.
GestureHandlerRootView faltante - Los gestos nunca se disparan. Solución: Envuelve la raíz de app/_layout.tsx.
Lectura de shared values en renderizado de React - translateX.value en JSX no se suscribe. Solución: Solo lee dentro de useAnimatedStyle.
Prueba en Expo Go obsoleto - El cliente antiguo carece de bits nativos después de la actualización. Solución: Reconstruye el cliente dev que coincida con SDK 57.
Llamar setState dentro de useAnimatedStyle - Errores de hilo worklet. Solución:runOnJS(setState) solo desde onEnd de gesto.
react-native-reanimated~4.0.0 y react-native-gesture-handler~2.28.0. Ejecuta npx expo install - no copies versiones de publicaciones de blog antiguas.
¿Necesito ambos paquetes?
Instala ambos juntos. Gesture Handler es requerido para Gesture.Pan y conflictos de scroll nativo; Reanimated impulsa valores de hilo UI desde callbacks de gestos.
¿Dónde va el plugin de Babel?
Última entrada en el array plugins de babel.config.js - después de todos los otros plugins. Reinicia Metro con --clear.
¿Reanimated requiere Nueva Arquitectura?
Los proyectos de SDK 57 cada vez más ejecutan Fabric + Hermes por defecto. Reanimated 4 está dirigido a ese stack.