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

134
Visualizações
Nested ternary operator for react components

I want to come up with a nested if ternary operator with react components but am being challenged , this is my logic :

if (value==='bank' && is_valid_iban && is_completed) {

return <Checked/>

}

else if (is_completed) {

return <Checked/>
}

else if (value==='businessplan' && is_required) {

return <NotChecked/>
}

This was my change :

{
(!value=== 'bank' || is_valid_iban) &&
                is_completed ? (<Checked/>) : (value ==='businessplan' && is_required && (<NotChecked/>))

}

What could be the best way of coming up with a ternary operator for the logic above.

Thanks

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

0

Make it Simple:

  {(value === "bank" && is_valid_iban && is_completed) || is_completed ? (
    <Checked />
  ) : (value === "businessplan" && is_required) ? (
    <NotChecked />
  ) : (
    <NotChecked />
  )}
about 4 years ago · Juan Pablo Isaza Relatório

0

This solution seeks to simplify the below given set of conditions:

if (value==='bank' && is_valid_iban && is_completed) {
  return <Checked/>
} else if (is_completed) {
  return <Checked/>
} else if (value==='businessplan' && is_required) {
  return <NotChecked/>
}

It is observed from the above that is_completed is part of the first & second conditions. Something like this: ((A && B && C) || C) which can be represented as (A && B) || C.

Using a standard if..else structure:

if ((value === 'bank' && is_valid_iban) || is_completed) return <Checked />
else if (value === 'businessplan' && is_required) return <NotChecked />
else return null;

Using ternary ?:

return (
  ((value === 'bank' && is_valid_iban) || is_completed)
  ? <Checked />
  : (value === 'businessplan' && is_required)
    ? <NotChecked />
    : null
);

When using ?: please always indent the code so it is readable. Same applies for if else as well; however, the if else structure is a lot more readable than ?:.

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