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

192
Vistas
La función de llamada a la acción/devolución de llamada del sistema de compilación no funciona

Estoy trabajando en un sistema de construcción/diseño. y todo funciona bien. El único problema es cuando publico mi paquete e intento usar la función de devolución de llamada. No devuelve correctamente los datos necesarios para pasar a la siguiente pantalla.

Traté de obtener un ejemplo reproducible para usted en CodeSandbox, sin embargo, hubo algunas implicaciones/errores menores que no me permitieron llegar al error específico del que le estoy hablando ahora. Eso parece tener sus propios problemas.

Entonces, ¿cómo se reproduce este error? Bueno, nuestro paquete a partir de ahora es público. Como se dijo anteriormente, no puede importar a CodeSandbox ya que da otros errores en las versiones de React (como se dijo, me ocuparé de eso más adelante). El nombre del paquete es @sandboxcommerceeng/react , el paquete scss que podría necesitar es @sandboxcommerceeng/scss . Continúe e importe en un archivo CSS. @import '@sandboxcommerceeng/scss/lib/global.css' . Luego, en el @sandboxcommerceeng/react , importe ECommercePlatformModal . El siguiente código le dará un error reproducible. Tipo de Platforms , también lo exporta @sandboxcommerceeng/react

 const [showEcommerceModal, setShowEcommerceModal] = React.useState<boolean>(false); const [url, setUrl] = React.useState<string>(''); const [selectedPlatform, setSelectedPlatform] = React.useState<keyof Platforms>(); <ECommercePlatformModal selectedPlatform={selectedPlatform} onSelectPlatform={(platform: keyof Platforms | undefined) => setSelectedPlatform(platform) } showModal={showEcommerceModal} onCancel={() => setShowEcommerceModal(false)} okButtonProps={{ onClick: () => console.log(url) }} // ✴ urlValidated={true} onUrlChange={(e: React.ChangeEvent<HTMLInputElement>) => { setUrl(e.target.value); }} url={url} />

✴: No puedo obtener la URL del estado mediante una devolución de llamada. Intenté simplemente hacer referencia a una función de devolución de llamada por separado y luego registrar la URL desde allí. También intenté pegar la URL de la devolución de llamada. Nada está funcionando.

Objetivo final

El objetivo final aquí es tenerlo para que pueda aplicar mi paquete en mi aplicación React y tener la funcionalidad del paquete, es decir, el código javascript implementado en el paquete en sí, funcione como se esperaba. La expectativa para este componente en particular es poder console.log la url y hacer que se muestre en el paquete desde la función de callback de llamada okButtonProp{{onClick: () => console.log(url)}}


Por favor, hágamelo saber si hay algo más que necesite de mí.

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

0

Tu respuesta está aquí . (podría ser solo un comentario pero aún no tiene suficiente reputación :)).

about 4 years ago · Juan Pablo Isaza Denunciar

0

Después de la depuración, el problema residía en el propio sistema de compilación. Usar React.memo en un componente de botón fue el culpable. La memorización no funcionaba según lo previsto debido al hecho de que ninguno de los elementos de utilería cambiaba realmente en el componente, por lo tanto, no volvía a representar el componente de botón con la nueva función y las variables que se le transmitían.

Seguí adelante y eliminé la memorización del componente memorizado, ya que no pude ver una manera de encajar la memorización en este caso.

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