reactjs / reactjs/react-docgen

Support Object.assign in propTypes definition

Ouverte
#151 9 commentaires 6 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

improvement
Langage dominant
TypeScript
Étoiles
3.8k
Forks
316
Merge moyen
5 h 7 min
PR mergées (30 j)
4

Description

In my React App, I have components which pass receive properties but just pass them as is to their child component. The parent component sort of extends the child component properties, so I'm using Object.assign to avoid code duplication. Unfortunately, recat-docgen doesn't seem to handle propTypes values which are evaluated from a function.

For example, let's say I have a component named ParentComponent and a component named ChildComponent.

The render function of the ParentComponent looks like this:

render() {
  return (
    <ChildComponent childPropA="SomeValue" childPropB="AnotherValue" />
  );
}

When I render the ParentComponent my code looks like this:

<ParentComponent parentPropA="Value" childPropA="SomeValue" childPropB="AnotherValue" />

Therefore, I use Object.assign for setting ParentComponent.propTypes:

ParentComponent.propTypes = Object.assign({}, ChildComponent.propTypes, {
  parentPropA: React.PropTypes.string
});

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

Aucun fichier source ni aucun test n’est nommé. Commencez par suivre la manière dont react-docgen évalue les propTypes des composants, puis reproduisez l’exemple Object.assign de l’issue. C’est terminé lorsque les propTypes hérités et définis localement sont tous deux correctement extraits, avec un test de régression couvrant l’exemple.

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

Évaluation

Stack technique
javascript, react
Domaine
documentation, tooling
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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