Pular para o conteúdo principal

React - Ciclo de vida

Os componentes no React, assim como recursos de diversas outras tecnologias, possui um ciclo de vida bem definido, ou seja, sabemos exatamente as etapas executadas da criação a destruição de um componente.

Os métodos do ciclo de vida de componentes são invocados em diferentes momentos, e eles podem ser organizados em três grupos: "mounting" onde são montados na tela, "updating" onde são atualizados e "unmounting" onde são desmontados e removidos da tela.

Mounting

Nesse momento temos a inicialização, a construção dos componentes (pré/pós) e a renderização.

constructor

Chamado antes que o componente seja montado:



getDerivedStateFromProps

Executado antes da renderização (render):



render

Único método puro, devendo sempre se manter puro, ou seja, sem modificar o estado do componente:



componentDidMount

Executado após a montagem do componente:



componentWillMount (legado, não deve ser usado)

Executado antes da montagem, e funcionará apenas até a versão 17.

Updating

Aqui temos o recebimento de propriedades, a definição e a atualização deve ocorrer a atualização do componente (caso ele deva ser atualizado) a renderização e a confirmação da atualização.

getDerivedStateFromProps

Funciona da mesma forma descrita em "mounting".

shouldComponentUpdate

Executado antes da renderização, ao receber novas propriedades ou estado e permite determinar se a renderização deve ou não ocorrer:



render

Funciona da mesma forma descrita em "mounting".

getSnapshotBeforeUpdate

Executado antes do retorno da renderização mais recente seja escrito no DOM:



componentDidUpdate

Executado após uma atualização:



componentWillReceiveProps (legado, não deve ser usado)

Executado antes que o componente montado receba propriedades, e funcionará apenas até a versão 17.

componentWillUpdate (legado, não deve ser usado)

Executado antes da renderização quando novas propriedades ou estado estão sendo recebidos, e funcionará apenas até a versão 17.

Unmounting

Na última etapa temos apenas a sinalização do inicio da destruição dos componentes.

componentWillUnmount

Executado antes que um componente seja desmontado ou destruído:


Exemplo

Aqui pode ser encontrado um exemplo que demonstra todo ciclo de vida de um componente, onde um componente de teste é criado, atualizado e depois removido, onde cada método do ciclo de vida é chamado gerando uma mensagem no console.

Ao iniciar a aplicação não temos nada no console:



Ao clicar no botão "Mostrar componente" nosso componente é criado passando pela etapa de "mounting":



Com o componente criado temos agora o botão "Mudar estado do componente teste!" que quando clicado inicia a etapa "updating":



Por fim, ao clicar no botão "Esconder componente" nosso componente é removido, passando pela etapa "unmounting":


Comentários

Mais visitadas

Aplicação Flask usando Nginx e Gunicorn

Aplicação Flask usando Nginx e Gunicorn Se você já desenvolveu uma aplicação Flask básica, sabe que o servidor de desenvolvimento embutido não é ideal para produção. Ele não é projetado para lidar com altos volumes de tráfego ou conexões simultâneas. Para tornar sua aplicação Flask mais robusta e pronta para produção, podemos usar o Gunicorn como servidor de aplicação e o Nginx como proxy reverso. Neste artigo, vamos adaptar o exemplo anterior ( Criando uma Aplicação CRUD com Flask, PostgreSQL e Docker ) para incluir o Nginx e o Gunicorn. O que são Nginx e Gunicorn? Gunicorn O Gunicorn (Green Unicorn) é um servidor de aplicação WSGI que roda aplicações Python como o Flask. Ele é eficiente e simples de configurar, lidando com múltiplas requisições ao mesmo tempo, algo que o servidor embutido do Flask não faz bem. Nginx O Nginx é um servidor web que atua como um proxy reverso. Ele recebe requisições HTTP e as encaminha ao Gunicorn. Além disso, o Nginx pode: Servir arquivos ...

Criando uma Aplicação CRUD com Flask, PostgreSQL e Docker

Criando uma Aplicação CRUD com Flask, PostgreSQL e Docker Neste guia, vamos criar uma aplicação básica que acessa um banco de dados PostgreSQL e realiza operações CRUD (Create, Read, Update, Delete). Vamos usar Flask e executar tudo com Docker. Sem estilos ou extras, apenas o essencial. Estrutura do Projeto crud-app/ |-- app/ | |-- app.py | |-- templates/ | | |-- index.html | | |-- edit.html |-- Dockerfile |-- requirements.txt |-- docker-compose.yml Passo 1: Dependências Crie um arquivo requirements.txt com as seguintes linhas: Flask==2.2.2 Flask-SQLAlchemy==3.0.2 psycopg2-binary==2.9.3 Werkzeug==2.2.2 Passo 2: Aplicação Flask Arquivo app/app.py : from flask import Flask, render_template, request, redirect, url_for from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) # Configuração do banco de dados app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://user:password@db:5432/crud_db' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False db...

Criando sua Primeira Aplicação Web com Python e Docker

  Criando sua Primeira Aplicação Web com Python e Docker Hoje vamos fazer algo prático: criar uma aplicação web simples em Python usando Flask e executá-la dentro de um contêiner Docker. Se você não sabe exatamente o que é Docker ou Flask, não se preocupe! Vou explicar tudo de forma simples para que você consiga acompanhar sem problemas. O que é Docker? Docker é uma ferramenta que permite empacotar aplicações e suas dependências em contêineres, garantindo que elas funcionem da mesma forma em qualquer ambiente. Em outras palavras, com o Docker, você cria um ambiente isolado e padronizado para rodar suas aplicações. Como instalar o Docker Acesse o site oficial do Docker . Baixe e instale a versão apropriada para o seu sistema operacional (Windows, macOS ou Linux). Após a instalação, verifique se está tudo funcionando abrindo um terminal e executando: docker --version Se o Docker estiver instalado corretamente, ele vai exibir a versão instalada. O que é Flask? Flask é um m...