Desde quarta-feira (15/02), a Rede de Supermercados Pague Menos está oferecendo a aferição de temperatura…

---Ensino Fundamental (1º Grau)Ensino Médio (2º Grau)Ensino Médio (2º Grau) ProfisionalizanteEnsino SuperiorMBAPós-Graduação no nível DoutoradoPós-Graduação no nível EspecializaçãoPós-Graduação no nível MestradoTecnólogo ou Técnico
---AdministraçãoDiretor(a)Financeiro (Diretor, Gerente, Auxiliar)GerênciaProprietário(a)RH (Analista, Coordenador, Supervisor, Psicologo)Supervisor

Hooks são uma nova adição ao React 16.8. Eles permitem que você use o state e outros recursos do React sem escrever uma classe.
Se Hooks é novidade pra você, talvez você queira primeiro ter uma visão geral de como funcionam os Hooks. Você também pode procurar informações úteis na seção de perguntas mais frequentes.
Durante a renderização inicial, o estado retornado é o mesmo que o valor passado como argumento inicial (initialState).
A função setState é usada para atualizar o estado. Ela aceita um novo valor de estado e coloca na fila de re-renderização do componente.
Durante as próximas re-renderizações, o primeiro valor retornado por useState sempre será o estado mais recente após a aplicação das atualizações.
React garante que a identidade da função setState é estável e não será alterada nos re-renderizadores. É por isso que é seguro omitir da lista de dependências useEffect ouuseCallback.
Se um novo estado for calculado usando o estado anterior, você pode passar uma função para setSate. A função receberá o valor anterior e retornará um valor atualizado. Aqui está um exemplo de um componente de contador que usa as duas formas de usar o setState:
Os botões ”+” and ”-” usam a forma funcional, porque o valor atualizado é baseado no valor anterior. Mas o botão “Reset” usa a forma normal, porque ele sempre define a contagem de volta para o valor inicial.
Se sua função de atualização retornar exatamente o mesmo valor que o estado atual, o renderizador subsequente será ignorado completamente.
Ao contrário do método setState encontrado em componentes de classe, useState não combina automaticamente os objetos atualizados. Você pode replicar esse comportamento por combinar a função que atualiza o objeto e o estado anterior usando a sintaxe object spread
Outra opção é o useReducer, que é mais adequada para gerenciar objetos de estado que contêm vários sub-valores.
O argumento initialState é o estado usado durante a primeira renderização. Nas próximas renderizações, ele é desconsiderado. Se o estado inicial é o resultado desse demorado processamento, você pode fornecer uma função, no qual será executada apenas na primeira renderização:
Se você atualizar o estado do Hook com o mesmo valor do estado atual, React irá pular a atualização sem renderizar os filhos ou disparar os efeitos. (React usa o algoritmo de comparação Object.is.)
Note que o React pode ainda precisar renderizar esse componente específico novamente antes de sair. Isso não deveria ser uma preocupação porque o React não irá ser “mais profundo” do que o necessário na árvore. Se você está fazendo um processamento mais demorado enquanto renderizada, você pode otimizar isso usando useMemo.
Mutações, assinaturas, temporizadores, logs e outros side effects não são permitidos dentro do corpo principal de um componente funcional (React se refere a isso como render phase). Usá-los levará a erros confusos e inconsistências na UI.