Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

386
Vistas
SolidJS: cómo obtener la instancia del componente actual

¿Hay alguna manera de acceder a la instancia/obtener una referencia del Componente que actualmente está renderizado/activo en SolidJS, y por lo tanto sus accesorios, señales, estado interno, efectos, etc.?

Estoy buscando algo como __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIREDReactCurrentOwner de React (pero consumible también en producción) o get_current_component() interno en tiempo de ejecución de Svelte. Para dar un poco de contexto, la razón por la que lo necesito es porque estoy creando una biblioteca que proporciona una función que debería poder acceder a los accesorios del Componente que actualmente consume esta función.

He intentado jugar con SolidJS getOwner() , pero no estoy seguro de haberlo entendido. No puedo encontrar ninguna referencia a los accesorios, señales o efectos actuales del Componente.

¿Hay alguna forma de lograrlo en Solid, o hay algún 'truco' para lograr algo similar?

Gracias de antemano

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Debido a la forma en que Solid funciona y maneja los "componentes", ese tipo de cosas son limitadas, no están disponibles o solo están disponibles en desarrollo. En producción, Solid tira lo que no necesita para funcionar.

El problema es que las "instancias de componentes" no existen en forma sólida per se, a diferencia de Svelte o React. Es solo un gráfico de señales y reacciones. ¿Qué es un componente? Solo una función que devuelve algunos elementos DOM, crea algunas señales y cálculos al agregarlos al gráfico, y luego bueno... se recolecta la basura y eso es todo. Un componente en producción no es diferente a cualquier otra función (gancho).

Por supuesto, ese gráfico todavía es analizable hasta cierto punto. (un poco menos en producción) Puede ver todos los cálculos (createEffect, createMemo, etc.) y las señales que observan actualmente. No mucho más que eso. Tal vez el contexto también. Props tal como lo entendemos, un objeto reactivo pasado por el padre al hijo, es solo un objeto con algunos getters pasados a una función, no existe en el gráfico reactivo como una entidad separada. Todavía puede obtener acceso a las señales internas, pero solo si se usan en algunos efectos; algún nodo del gráfico creativo tiene una referencia.

Algo así: https://playground.solidjs.com/?hash=597826062&version=1.4.1

Por lo tanto, si está creando una biblioteca destinada a ser utilizada en producción, prefiero recomendarle que tenga los datos que desea que se proporcionen explícitamente con argumentos/accesorios en lugar de recorrer los elementos internos.

Pero si está buscando hacer algunas visualizaciones del gráfico reactivo durante el desarrollo, puede ver el código fuente de este depurador: https://github.com/thetarnav/solid-devtools/tree/main/packages/debugger

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda