reactjs / reactjs/react.dev

Important note about `set` functions missing from new `useState` docs

Aberta
#5,950 0 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 was attending a class about useCallback in conjunction with useState in a custom hook, and the solution to my exercise used an empty dependency array in useCallback, even though it used a setValue from a state:

  const [value, setValue] = React.useState(initialValue);

  const toggleValue = React.useCallback(
    () => setValue((currentValue) => !currentValue),
    [] # I put [setValue] here
  );

  return [value, toggleValue];

I wasn't sure if this was ok, but didn't find any info about this in the new docs of useState. I asked around and found that the old docs do contain the specific information I was looking for:

image

I'd like to suggest to add this note or something similar in the new docs as well. It might have been omitted for a good reason, but it does feel like important information to me.

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 pela nova documentação de useState, especificamente pela seção setstate vinculada na issue, e compare-a com a referência correspondente de Legacy Hooks. Adicione a observação ausente ou uma explicação equivalente sobre as funções set e as dependências de useCallback e, em seguida, verifique se a orientação está clara na documentação renderizada.

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
1/5
Tempo estimado
Menos de uma hora
Status de atividade
Estagnada
Clareza
Claramente especificada
Facilidade para iniciantes
45/100

Receba novas issues na sua caixa de entrada

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