Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

382
Visualizações
¿Cómo usar el evento onClick en el componente de enlace de reacción?

Estoy usando el componente Link del enrutador reactjs y no puedo hacer que onClickevent funcione. Este es el código:

 <Link to={this.props.myroute} onClick='hello()'>Here</Link>

¿Es esta la manera de hacerlo o de otra manera?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Está pasando hello() como una cadena, también hello() significa ejecutar hello inmediatamente.

tratar

 onClick={hello}
over 4 years ago · Santiago Trujillo Relatório

0

Deberías usar esto:

 <Link to={this.props.myroute} onClick={hello}>Here</Link>

O (si el método hello se encuentra en esta clase):

 <Link to={this.props.myroute} onClick={this.hello}>Here</Link>

Actualización: para ES6 y más reciente, si desea vincular algún parámetro con el método de clic, puede usar esto:

 const someValue = 'some'; .... <Link to={this.props.myroute} onClick={() => hello(someValue)}>Here</Link>
over 4 years ago · Santiago Trujillo Relatório

0

No creo que este sea un buen patrón para usar en general. Link ejecutará su evento onClick y luego navegará a la ruta, por lo que habrá un ligero retraso en la navegación a la nueva ruta. Una mejor estrategia es navegar a la nueva ruta con el apoyo 'a' como lo ha hecho, y en la función componenteDidMount() del nuevo componente puede activar su función de saludo o cualquier otra función. Te dará el mismo resultado, pero con una transición mucho más suave entre rutas.

Por contexto, me di cuenta de esto mientras actualizaba mi tienda redux con un evento onClick en Link como el que tiene aquí, y causó un retraso de pantalla en blanco de ~.3 segundos antes de montar el componente de la nueva ruta. No hubo una llamada api involucrada, por lo que me sorprendió que la demora fuera tan grande. Sin embargo, si solo está registrando "hola" en la consola, es posible que el retraso no se note.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda