reactjs / reactjs/react.dev

[Hooks] What is accepted on useEffect's 2nd argument

Aberta
#1,351 2 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
JavaScript
Estrelas
11.8k
Forks
7.9k
Merge médio
1d 11h
PRs com merge (30d)
11

Descrição

I assume currently it only do equal (===) comparison, since passing array of array isn't preventing it.

import React, { useState, useEffect } from 'react';

export default () => {
  let [count, setCount] = useState(0);
  let guard = [0, 1, 2];
  useEffect(() => {
    setTimeout(() => {
      setCount(count + 1);
    }, 2000); // delay to prevent lagging
  }, [guard]);
  return <div>{count}</div>;
};

I don't find anything in current documentation. I think it is needed to add accepted types passed into that 2nd argument.

On side note, I wonder what In the future, the second argument might get added automatically by a build-time transformation. phrase means.

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece pelo ponto de entrada da documentação de useEffect e pelo exemplo de nested-array da issue; verifique o que o segundo argumento aceita e como a comparação de dependências é descrita. Explique também a frase citada sobre build-time-transformation. Considera-se concluído quando a documentação responder claramente às duas perguntas, incluindo o comportamento do exemplo.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
javascript, react
Domínio
documentation
Tipo de issue
Documentação
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
38/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.