¿Qué hay de nuevo en Preact para 2026?
Si estás evaluando Preact para un proyecto de producción en 2026, el panorama ha cambiado. Entre un parche de seguridad crítico, la beta de Preact 11 y cambios significativos en el ecosistema, hay información práctica que necesitas conocer antes de tomar decisiones.
Puntos Clave
- Aplica el parche de seguridad de enero de 2026 inmediatamente a todos los proyectos Preact 10.x para prevenir inyección insegura de VNode y posibles problemas de XSS.
- Preact 11 beta introduce Hydration 2.0 y
Object.ispara dependencias de hooks, pero aún no está listo para producción. - Usa Vite en lugar de preact-cli para nuevos proyectos, y elige preact-iso sobre preact-router para enrutamiento.
- La capa
preact/compatfunciona con la mayoría de las bibliotecas de React pero aún no soporta características de React 19 como el hookuse().
El Parche de Seguridad de Enero de 2026
En enero de 2026, Preact lanzó una corrección de seguridad que aborda una vulnerabilidad de igualdad estricta del constructor VNode (parcheada en las versiones 10.26.10 / 10.27.3 / 10.28.2 en GitHub). Este cambio garantiza que solo las instancias reales de VNode creadas por Preact sean aceptadas internamente.
Anteriormente, objetos planos especialmente diseñados (por ejemplo, provenientes de entrada JSON) podían confundirse con VNodes, potencialmente habilitando vectores de ataque de inyección DOM insegura y estilo XSS en casos extremos. Si estás ejecutando Preact 10.x, actualiza inmediatamente—la corrección es retrocompatible y no requiere cambios en el código.
Beta de Preact 11: Lo que realmente está cambiando
La beta de Preact 11 introduce actualizaciones significativas, aunque aún no es estable. No planifiques migraciones de producción basándote en ella hasta que se lance una versión final.
Hydration 2.0
El cambio más significativo es Hydration 2.0. Anteriormente, los componentes que se suspendían durante la hidratación debían devolver exactamente un nodo DOM. Preact 11 elimina esta restricción—los componentes ahora pueden devolver cero o múltiples nodos:
function LazyAnalytics() {
// Valid in Preact 11: returns null
return null
}
function MultipleElements() {
// Valid in Preact 11: returns fragment with multiple children
return (
<>
<p>First</p>
<p>Second</p>
</>
)
}
Esto permite patrones SSR más flexibles y simplifica el diseño de componentes para límites asíncronos.
Igualdad de Dependencias de Hooks
Preact 11 cambia las verificaciones de dependencias de hooks de igualdad flexible a Object.is. Esto corrige casos extremos con comparaciones de NaN en useEffect, useMemo y useCallback. Si has trabajado alrededor del manejo de NaN antes, esas soluciones alternativas se vuelven innecesarias.
Mejoras en el Manejo de Refs
Preact 11 mejora cómo se manejan las refs para componentes de función, reduciendo la necesidad de forwardRef explícito en muchos escenarios y alineándose más estrechamente con el comportamiento moderno de React. La superficie exacta de la API aún está evolucionando en la beta, por lo que los autores de bibliotecas deben tratar esto como provisional hasta el lanzamiento estable.
Cambios Disruptivos a Tener en Cuenta
- El soporte para navegadores legacy (incluyendo IE11) se elimina completamente.
- Algunos comportamientos legacy como el manejo de
defaultPropsy el sufijo automático depxahora están confinados apreact/compat.
Discover how at OpenReplay.com.
Herramientas de Preact 2026: Cambios en el Ecosistema
La historia de las herramientas ha cambiado sustancialmente. Comprender estos cambios te evita construir sobre fundamentos obsoletos.
Vite Reemplaza a preact-cli
preact-cli ya no es la herramienta de scaffolding recomendada y está en gran medida sin mantenimiento. Los nuevos proyectos deben usar Vite con el preset de Preact. Vite ofrece compilaciones más rápidas, mejor HMR y mantenimiento activo.
preact-iso Sobre preact-router
preact-router se ha estancado. Para nuevas aplicaciones, preact-iso es la solución de enrutamiento recomendada. Es más ligero, se mantiene activamente y está diseñado para patrones modernos de Preact.
Signals: Gestión de Estado Opcional
Preact Signals proporciona gestión de estado reactiva como biblioteca de primera parte. No es parte del núcleo de Preact—optas por ella explícitamente. Signals funciona bien para reactividad de grano fino pero no es requerido para aplicaciones típicas.
Compatibilidad de Preact vs React en 2026
La capa preact/compat proporciona buena cobertura para ejecutar bibliotecas de React, pero persisten brechas. Las características de React 19 como el hook use() aún no están soportadas. Si tu proyecto depende de APIs de React de vanguardia, verifica la compatibilidad antes de comprometerte.
Para la mayoría de las bibliotecas de React—enrutamiento, gestión de estado, componentes UI—preact/compat funciona de manera confiable. La beta de Preact 11 mejora esto aún más al ajustar la compatibilidad de comportamiento en áreas como el manejo de refs.
Cuándo Tiene Sentido Preact
Preact sigue siendo atractivo para entornos con restricciones de tamaño de bundle. La actualización de API 2025-10 de Shopify exige Preact para extensiones UI con un límite estricto de 64 KB. Restricciones similares existen en widgets embebidos, PWAs y páginas de destino críticas en rendimiento.
Si el tamaño del bundle no es una preocupación principal y necesitas compatibilidad completa con React 19, React mismo puede ser más simple.
Recomendaciones Prácticas
Para actualizaciones de Preact 2026, esto es lo que debes hacer ahora:
- Aplica el parche de seguridad de enero de 2026 a todos los proyectos Preact 10.x
- Usa Vite para scaffolding de nuevos proyectos
- Elige preact-iso para enrutamiento en nuevas aplicaciones
- Espera en Preact 11 para producción—monitorea la beta pero no migres todavía
- Prueba
preact/compatcontra tus dependencias específicas de React antes de comprometerte
Conclusión
Preact sigue siendo una opción sólida para trabajo de producción sensible al tamaño. El ecosistema está madurando con recomendaciones de herramientas más claras y mejor compatibilidad con React. Aplica el parche de seguridad inmediatamente, adopta Vite y preact-iso para nuevos proyectos, y monitorea la beta de Preact 11 sin apresurarte a migrar. Con la información actual, puedes evitar herramientas obsoletas y comprender los límites reales de compatibilidad.
Preguntas Frecuentes
Sí, puedes migrar proyectos existentes de preact-cli a Vite. Crea un nuevo proyecto Vite con el preset de Preact, copia tus archivos fuente y actualiza tus scripts de compilación. La mayoría de las configuraciones se traducen directamente, aunque es posible que necesites ajustar los alias de rutas y el manejo de variables de entorno para que coincidan con las convenciones de Vite.
No, Preact Signals es completamente opcional. Puedes continuar usando useState, useReducer o bibliotecas externas de gestión de estado como Zustand o Redux. Signals ofrece beneficios de reactividad de grano fino pero añade complejidad. Evalúa si tu aplicación necesita ese nivel de optimización antes de adoptarlos.
Prueba la biblioteca en un entorno de desarrollo antes de comprometerte. Instala la biblioteca, configura tu bundler para crear un alias de react a preact/compat y verifica que la funcionalidad principal funcione. Revisa los issues de GitHub de la biblioteca para problemas conocidos de compatibilidad con Preact. Las bibliotecas que usan APIs específicas de React 19 como use() no funcionarán.
Comienza nuevos proyectos con Preact 10.x y el parche de seguridad de enero de 2026. La beta de Preact 11 no está lista para producción, y la migración de 10.x a 11 debería ser directa una vez que sea estable. Construir sobre herramientas probadas ahora evita retrasos mientras te posicionas para una actualización fácil más adelante.
Gain Debugging Superpowers
Unleash the power of session replay to reproduce bugs, track slowdowns and uncover frustrations in your app. Get complete visibility into your frontend with OpenReplay — the most advanced open-source session replay tool for developers. Check our GitHub repo and join the thousands of developers in our community.