React - Uma introdução bem básica - IX
Neste artigo vou apresentar uma introdução bem básica ao React. |
Renderização Condicional
Vejamos agora como realizar a renderização condicional no React.(veja o artigo anterior aqui)
No React, você pode criar componentes distintos que encapsulam o comportamento que você precisa. Então, você pode renderizar apenas alguns deles, dependendo do estado do seu aplicativo.
A renderização condicional no React funciona da mesma forma que as condições funcionam no JavaScript. Use operadores JavaScript, como if, ou o operador condicional (ternário), para criar elementos que representam o estado atual e deixe o React atualizar a interface do usuário para que correspondam a esses estados.
Vamos considerar o componente contador que estamos tratando nesta série de artigos.
Vamos simplificar o seu código de forma termos somente o array de itens e o código para sua renderização conforme mostrado abaixo:
Executando o projeto agora : npm start e abrindo o navegador em localhost:3000 teremos o resultado abaixo:
Muito bem. Vamos partir desse ponto.
Agora vamos supor que desejamos renderizar o array de elementos apenas se houver elementos no array. Caso contrário vamos exibir a mensagem 'Não existem itens'.
Para isso vamos separar a lógica e definir a condição de exibição usando javascript.
Vamos criar um operador chamado renderItens() conforme mostra o código a seguir:
Agora ao executar o projeto, havendo itens no array, iremos obter no navegador a exibição dos itens:
Mas se removermos todos os itens do array ao executar teremos:
Muito simples...
Vejamos agora outra técnica para realizar a renderização condicional.
Podemos usar o operador AND (&&) do JavaScript e definir uma condição para renderização.
Vamos definir a seguinte condição :
{this.state.itens.length === 0 && 'Inclua um item...'}
A lógica acima determina que : Se o tamanho do array for igual a zero (true) E 'Inclua um item' for true teremos o resultado exibindo: 'Inclua um item'
Vamos incluir esta linha de código no método Render() conforme mostrado abaixo:
Executando teremos:
Se você não conhece JavaScript deve estar pensando: 'Mas que lógica doida é essa ??? '
Calma, vamos entender como funciona a avaliação do operadores && ou AND no JavaScript.
A nossa expressão lógica usando o operador && e pode ter dois valores:
1- this.state.itens.length === 0 Que é uma expressão booleana que vai retornar true ou false se o array possui ou não itens;
2- 'Inclua um item...' Uma string
Na linguagem JavaScript podemos usar os operadores lógicos com valores não booleanos como uma string ou um número.
Ao avaliar a expressão contendo uma string se a string possuir pelo menos um caractere, ou seja, se não for vazia, o JavaScript considera como true. Se a string for vazia será false.
Então como a primeira parte da expressão é true a segunda parte será avaliada, e, para o exemplo temos uma string não vazia que será convertida para true e será retornada.
Para constatar esse comportamento abra uma janela de comandos do Node e digite:
> true && 'Macoratti' vai retornar 'Macoratti' pois temos uma string não vazia. Podemos também usar números onde zero é considerado false e os demais valores true.
E por isso que obtemos o resultado desejado no exemplo.
Na próxima aula veremos como tratar eventos.
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Super DVD C# - Recursos de aprendizagens e vídeo aulas para C#
Curso Fundamentos da Programação Orientada a Objetos com VB .NET