SolidJS 2.0 Beta: Async First-Class, Suspense Rediseñado y Cambios Clave

SolidJS, uno de los frameworks JavaScript más avanzados en el ecosistema frontend moderno, ha lanzado la versión 2.0 Beta, una actualización que redefine su modelo de reactividad, manejo de asincronía y experiencia de desarrollo.

Luego de un largo periodo en fase experimental, el equipo decidió omitir la etapa Alpha y pasar directamente a Beta, consolidando una API más estable y centrando el desarrollo en mejoras internas y compatibilidad.

Un cambio clave: la asincronía ahora es de primera clase

El principal cambio en SolidJS 2.0 es que la asincronía pasa a ser nativa dentro del sistema reactivo.

Ahora las computaciones pueden devolver Promises directamente, y el grafo reactivo se encarga automáticamente de:

  • Suspender la UI cuando es necesario
  • Reanudar cálculos cuando los datos están disponibles
  • Gestionar estados intermedios sin lógica adicional

Esto elimina gran parte de la complejidad previa en la gestión de datos asíncronos.

Suspense completamente rediseñado

El sistema de Suspense también ha sido revisado desde cero.

En esta nueva versión:

  • Loading solo controla el estado inicial de carga
  • Los subárboles UI se estabilizan tras la primera carga
  • Los estados “pending” se manejan con isPending() en lugar de reconstrucciones completas

Esto evita re-renderizados innecesarios y mejora la estabilidad visual de las aplicaciones.

Mutaciones y estado optimista más simples

SolidJS 2.0 introduce nuevas primitivas para manejar mutaciones y actualizaciones de estado:

  • action() para operaciones asíncronas
  • createOptimisticStore para UI optimista
  • Flujos de revalidación automáticos

Esto permite construir interfaces más reactivas con menos código y menos boilerplate.

Cambios en el modelo de reactividad

El framework también introduce ajustes importantes en su núcleo reactivo:

  • createSignal(fn) y createStore(fn) como derivados de primera clase
  • Actualizaciones agrupadas en microtasks
  • Lecturas actualizadas solo tras flush()
  • Modelo de ejecución completamente determinista

Esto mejora la previsibilidad del comportamiento del sistema, uno de los puntos más valorados del framework.

Breaking changes importantes en SolidJS 2.0

Como era de esperar en una versión mayor, hay cambios incompatibles:

  • <Index> reemplazado por <For keyed={false}>
  • For ahora expone accesores en children
  • createEffect dividido en compute y apply
  • onMount sustituido por onSettled
  • Eliminado el sistema use: directives
  • Stores con semántica “draft-first” por defecto

Estos cambios buscan simplificar el modelo mental del framework y mejorar su escalabilidad.

¿Qué es SolidJS y por qué importa?

SolidJS es un framework JavaScript creado por Ryan Carniato basado en reactividad fina sin Virtual DOM.

A diferencia de React, SolidJS:

  • No usa Virtual DOM
  • Actualiza solo nodos afectados
  • Ofrece rendimiento extremadamente alto
  • Mantiene una API similar a React pero más directa

Esto lo convierte en una opción potente para aplicaciones modernas que requieren rendimiento extremo con bajo overhead.

PROBAR Y CONOCER MÁS DE SOLID JS

Comparativa rápida: SolidJS vs React

CaracterísticaSolidJS 2.0React
Virtual DOMNo
ReactividadFina granularBasada en re-render
Async nativoParcial
RendimientoMuy altoAlto
ComplejidadMediaMedia-Alta

Impacto en el ecosistema frontend

SolidJS 2.0 refuerza una tendencia clara en el frontend moderno:

  • menos re-render
  • más reactividad declarativa
  • async integrado en el core
  • frameworks más minimalistas

Esto lo posiciona como competidor directo de frameworks como React, Svelte o Vue en escenarios de alto rendimiento.


Conclusión

SolidJS 2.0 Beta marca un punto de inflexión en la evolución del frontend moderno. Con async nativo, Suspense rediseñado y un modelo de reactividad más determinista, el framework se posiciona como una de las alternativas más potentes y eficientes al paradigma tradicional basado en Virtual DOM.

Vistas: 1