reactjs / reactjs/react-docgen

TS forwardRef support

Aperta
#878 1 commento 11 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

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

Descrizione

The following input:

import React, { forwardRef } from 'react';

interface ButtonProps {
  variant?: 'small' | 'large';
  disabled?: boolean;
  children: React.ReactNode;
}

export const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button(
  { disabled = false, variant = 'small', children },
  ref
) {
  return (
    <button type="button" disabled={disabled} ref={ref}>
      {children} {variant}
    </button>
  );
});

Produces:

{}

It's come up several times in Storybook: https://github.com/storybookjs/storybook/issues/8894 and https://github.com/storybookjs/storybook/issues/9511

Filed from https://github.com/storybookjs/storybook/pull/24165

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

Leggete prima la riproduzione fornita di TypeScript/React forwardRef e seguite il punto di ingresso del parser che la trasforma in {}. Confrontate i report correlati di Storybook con il comportamento previsto; il lavoro è completato quando questo input viene riconosciuto invece di produrre {}, con un test di regressione che copra il risultato.

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

Valutazione

Stack tecnologico
react, typescript
Ambito
tooling
Tipo di issue
Funzionalità
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.