Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Sugestão] Renderização condicional

Eu fiz essa forma e também funcionou:

import Card from '../Card/Card'
import './Time.css'

export default function Time(props) {
    
    if (props.colaboradores.length > 0) {
        return (
            <section className='time' style={{ backgroundColor: props.corFundo }}>
                <h3>{props.nome}</h3>
                <div className='linha-horizontal' style={{ backgroundColor: props.corDestaque }}></div>
                <div className='cards'>
                    {props.colaboradores.map(colaborador =>
                        <Card
                            nome={colaborador.nome}
                            cargo={colaborador.cargo}
                            imagem={colaborador.imagem}
                            corDestaque={props.corDestaque}
                        />
                    )}
                </div>
            </section>
        )
    }
}
2 respostas

Bacana! Existem várias formas de lidar com renderização condicional. A única coisa que eu adicionaria aí era um return null pra ficar explícito para outras pessoas desenvolvedoras, e pro próprio React, que se não tivermos colaboradores, não renderizamos nada. E faria também a inversão da lógica, assim:

export default function Time(props) {
    
    if (props.colaboradores.length == 0) {
        return null;
    }
    return (
        <section className='time' style={{ backgroundColor: props.corFundo }}>
            <h3>{props.nome}</h3>
            <div className='linha-horizontal' style={{ backgroundColor: props.corDestaque }}></div>
            <div className='cards'>
                {props.colaboradores.map(colaborador =>
                    <Card
                        nome={colaborador.nome}
                        cargo={colaborador.cargo}
                        imagem={colaborador.imagem}
                        corDestaque={props.corDestaque}
                    />
                )}
            </div>
        </section>
    )
}

Caso o número de colaboradore seja zero, não queremos fazer nada e retornamos null. Caso contrário, retornamos o JSX desejado. O que você acha?

solução!

Legal! Obrigado pelo feedback.