VSCode syntax highlighting breaks for JSX components with generic parameter defaults
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 42/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- react, typescript
- Ambito
- tooling
Direzione di ricerca
Inizia con la riproduzione collegata di jsx-syntax-bug e con i file della grammatica TypeScript-TmLanguage responsabili dell’evidenziazione di JSX. Confronta l’esempio con la issue TypeScript correlata, quindi verifica che un componente JSX generico con un parametro di tipo predefinito non venga più contrassegnato come errore, mentre gli esempi esistenti continuino a essere evidenziati correttamente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
🔎 Search Terms
"vscode jsx generics"
🕗 Version & Regression Information
- This is the behavior in every version I tried, and I reviewed the FAQ for entries about JSX Generics
⏯ Playground Link
https://github.com/james-yeoman/jsx-syntax-bug
💻 Code
import React from "react";
type FooProps<T> = {
genericProp: T
}
export const Foo = <T = string,>({ genericProp }: FooProps<T>) => {
// ^ Error highlighting starts here
return <div>{String(genericProp)}</div>
}
🙁 Actual behavior
When defining a React JSX component as a Generic component, if you add a type default to the type parameter, the syntax highlighting marks it as an error, but no error is actually reported.
If you remove the fallback, or add an extends, the syntax error highlighting goes away.
The readme at my reproduction repo has screenshots of the bug in action, in case I've not explained the behaviour particularly well.
🙂 Expected behavior
Syntax highlighting should be able to handle Generics with default types in JSX files.
Additional information about the issue
https://github.com/microsoft/TypeScript/issues/45939 - Highly related, but is for typescript itself, rather than for VSCode's syntax highlighting.
My VSCode installation About content
Version: 1.90.0
Commit: 89de5a8d4d6205e5b11647eb6a74844ca23d2573
Date: 2024-06-04T19:43:07.605Z
Electron: 29.4.0
ElectronBuildId: 9593362
Chromium: 122.0.6261.156
Node.js: 20.9.0
V8: 12.2.281.27-electron.0
OS: Linux x64 5.15.0-112-generic
- Lingua principale
- TypeScript
- Stelle
- 471
- Fork
- 149
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
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.
Altre issue di microsoft/TypeScript-TmLanguage
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
microsoft/TypeScript-TmLanguage#1071 ·
-
triste Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 5/100
microsoft/TypeScript-TmLanguage#1078 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
microsoft/TypeScript-TmLanguage#1076 · 6 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
microsoft/TypeScript-TmLanguage#1074 · 2 commenti ·
-
typescript-basics: fix highlighting for triple-slash reference directives with preserve="true" Aperta
Difficoltà 1/5 1-3 ore Idoneità per principianti 58/100
microsoft/TypeScript-TmLanguage#1066 · 1 commento ·
Tutte le issue di microsoft/TypeScript-TmLanguage
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
bug v2
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
modelcontextprotocol/inspector#2458 · 1 commento ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
carbon-design-system/ibm-products#9907 ·