reactjs / reactjs/react-docgen

Support React.Config

Offen
#499 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

flow new feature
Vorherrschende Sprache
TypeScript
Sterne
3.8k
Forks
316
Ø Merge
5 Std. 7 Min.
Gemergte PRs (30 T.)
4

Beschreibung

For functional components we can use React.Config to define default props:

import * as React from 'react';

type DefaultProps = $ReadOnly<{
  /** Description for defaultProp. */
  defaultProp: number,
}>;
type AllProps = $ReadOnly<{
  ...DefaultProps,
  /** Description for optionalProp. */
  optionalProp?: number,
  /** Description for requiredProp. */
  requiredProp: number,
}>;
type Props = React.Config<AllProps, DefaultProps>;

export default function Component({
  defaultProp = 0,
  optionalProp,
  requiredProp,
}: Props) {
  return <div />;
}

But react-docgen fails to parse all the props properly. It only parses the default prop but not the other two props.

{
  "description": "",
  "displayName": "Component",
  "methods": [],
  "props": {
    "defaultProp": {
      "defaultValue": {
        "value": "0",
        "computed": false
      },
      "required": false
    },
    "optionalProp": {
      "defaultValue": {
        "value": "0",
        "computed": false
      },
      "required": false
    }
  }
}

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem Beispiel der Funktionskomponente und seiner gemeldeten JSON-Ausgabe und verfolge anschließend, wie react-docgen React.Config und destrukturierte Props verarbeitet. Als abgeschlossen gilt die Aufgabe, wenn die Einträge defaultProp, optionalProp und requiredProp jeweils mit den korrekten Metadaten für required und default value geparst werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
react
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.