microsoft / microsoft/TypeScript-TmLanguage
TSX Default Generic Arrow Function Syntax Highlighting
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 471
- Fork
- 149
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Does this issue occur when all extensions are disabled?: Yes
- VS Code Version: Version: 1.78.2
- OS Version: Darwin arm64 21.3.0
Related to https://github.com/microsoft/TypeScript/issues/47062
TSC has been updated to successfully parse the below TSX code snippet:
const Component = <T = undefined>(props: PropType<T>) => <p>content</p>
however this currently breaks the syntax highlighting in VSCode's typescriptreact parser.
The same can be said for the trailing comma added by prettier (3.0.3):
const Component = <T = undefined,>(props: PropType<T>) => <p>content</p>
Some short term work-arounds are available:
Using extends
const Component = <T extends unknown = undefined>(props: PropType<T>) => <p>content</p>
Using function syntax
const Component = function<T = undefined>(props: PropType<T>) {
return <p>content</p>
}
Despite these workarounds, the original code seems syntactically valid, and more concise, so I believe this to be a bug
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Riproduci i due snippet di funzioni arrow generiche in VS Code con il parser typescriptreact e confronta la loro evidenziazione con gli esempi di workaround. Esamina quindi i file della grammatica TextMate del repository per individuare le regole TypeScript JSX; il lavoro è completato quando entrambe le forme valide vengono evidenziate correttamente senza regressioni nei workaround mostrati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- tooling
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100