reactjs / reactjs/react.dev

Aren't updater functions in state an antipattern?

Ouverte
#1,717 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
JavaScript
Étoiles
11.8k
Forks
7.9k
Merge moyen
1 j 11 h
PR mergées (30 j)
11

Description

In documentation here:
https://reactjs.org/docs/context.html#updating-context-from-a-nested-component

An updater function is placed directly in the state object for the sole purpose of passing it down through context:

this.state = {
  theme: themes.light,
  toggleTheme: this.toggleTheme,
};

This seems like an odd antipattern. I've never placed a method in state before. Shouldn't state be exclusively for properties that affect rendering and change over time?

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Examinez la documentation React Context liée, en particulier la section « Updating Context from a Nested Component » et son exemple d’updater-in-state. Déterminez si l’exemple nécessite une clarification ou une révision, et considérez le travail comme terminé lorsque la documentation fournit une explication claire et approuvée de ce modèle.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
javascript, react
Domaine
documentation
Type d'issue
Documentation
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.