reactjs / reactjs/react.dev

Missing early return in set function example?

Abierto
#6,336 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
JavaScript
Estrellas
11.8k
Forks
7.9k
Merge medio
1 d 11 h
PR fusionados (30 d)
11

Descripción

Regarding this example

import { useState } from 'react';

export default function CountLabel({ count }) {
  const [prevCount, setPrevCount] = useState(count);
  const [trend, setTrend] = useState(null);
  if (prevCount !== count) {
    setPrevCount(count);
    setTrend(count > prevCount ? 'increasing' : 'decreasing');
//    return; here?
  }
  return (
    <>
      <h1>{count}</h1>
      {trend && <p>The count is {trend}</p>}
    </>
  );
}

It seems to me that the example should include an early return statement after setTrend so React doesn't have to compute a tree that might be discarded immediately because the trend is changed from null to increasing / decreasing

first render

return (
    <>
      <h1>{count}</h1>
    </>
  );

immediate second pass

return (
    <>
      <h1>{count}</h1>
      <p>The count is increasing</p>
    </>
  );

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Abre el ejemplo enlazado de la documentación de useState y compara su comportamiento actual con el retorno anticipado propuesto después de setTrend. Revisa la explicación circundante y la salida del ejemplo antes de decidir si es necesario revisar el ejemplo; la tarea está terminada cuando el ejemplo y su explicación reflejan con precisión el comportamiento de renderizado acordado.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, react
Área
documentation
Tipo de issue
Documentación
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
48/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.