reactjs / reactjs/react-docgen

Support React.Config

Aperta
#499 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

flow new feature
Lingua principale
TypeScript
Stelle
3.8k
Fork
316
Merge medio
5h 7m
PR unite (30g)
4

Descrizione

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
    }
  }
}

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia dall'esempio di componente funzionale e dal relativo output JSON riportato, quindi segui il modo in cui react-docgen gestisce React.Config e le props destrutturate. Il lavoro è completato quando le voci defaultProp, optionalProp e requiredProp vengono tutte analizzate con i metadati corretti per required e default value.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
react
Ambito
tooling
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.