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

204
Visualizações
Cómo usar una declaración if que devuelve una cadena en el título profesional de Tooltip

Estoy tratando de proporcionar condicionalmente el título de la información sobre herramientas llamando a una función y usando la declaración if, pero tengo un error.

 const getStatusMessage = (answer: AnswerStatus) => { if (answer == AnswerStatus.ANSWER_SUBMITTED || answer == AnswerStatus.ANSWER_PROCESSING) { return 'answers are still being processed.' } else if (answer == AnswerStatus.QUESTION_SERVED) { return "question was given to candidate but didn't answer it." } else if (answer == AnswerStatus.ANSWER_FAILED) { return 'there was a problem processing the answer of the candidate.' }

}

 <Tooltip placement='bottom-end' title={getStatusMessage(answer.status)}><button/></Tooltip>

---MENSAJE DE ERROR---

Escriba 'cadena | undefined' no se puede asignar al tipo 'booleano | Reaccionar niño | Fragmento de reacción | ReactPortal'.

El tipo 'indefinido' no se puede asignar al tipo 'booleano | Reaccionar niño | Fragmento de reacción | ReactPortal'.ts(2322) Tooltip.d.ts(163, 3): El tipo esperado proviene de la propiedad 'título' que se declara aquí en el tipo 'IntrinsicAttributes & TooltipProps'

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El error se produce porque la propiedad del título del componente Tooltip está obteniendo un valor indefinido

No cubriste el caso predeterminado cuando answer.status no está undefined .

Así que tampoco

 <Tooltip placement='bottom-end' title={answer.status? getStatusMessage(answer.status) : '' }><button/></Tooltip>

o un return ''; declaración en su getStatusMessage servirá.

 const getStatusMessage = (answer: AnswerStatus) => { if (answer == AnswerStatus.ANSWER_SUBMITTED || answer == AnswerStatus.ANSWER_PROCESSING) { return 'answers are still being processed.' } else if (answer == AnswerStatus.QUESTION_SERVED) { return "question was given to candidate but didn't answer it." } else if (answer == AnswerStatus.ANSWER_FAILED) { return 'there was a problem processing the answer of the candidate.' } return '';
about 4 years ago · Juan Pablo Isaza 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