microsoft / microsoft/TypeScript
Autocomplete on extends keyof generic
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 111k
- Forks
- 14.3k
- Ø Merge
- 2 T. 4 Std.
- Gemergte PRs (30 T.)
- 132
Beschreibung
TypeScript Version: 3.3.0-dev.20181122
Search Terms:
- autocomplete
- autocomplete generic
- generic extends
- autocomplete keyof extends
- autocomplete keyof generic
Code
type Except<T, K extends keyof T> = Pick<T, { [P in keyof T]: P extends K ? never : P }[keyof T]>;
interface I1 {
foo: string;
}
function F1<T extends I1>(): Except<T, ''> { // error is shown but autocomplete is not provided
//code
return null;
}
Expected behavior:
Having autocomplete showing when extending a generic
Actual behavior:
Even if error is correctly displayed, no autocomplete is shown for a T extends with a known type on the right hand.
Related Issues:
#16740 - but this one is quite different because it's a keyof issue
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduziere das Problem mit dem bereitgestellten TypeScript Playground-Link und dem angegebenen generischen Beispiel extends keyof. Verfolge den TypeScript-Autovervollständigungspfad für Constraints wie T extends I1; als abgeschlossen gilt die Aufgabe, wenn Vervollständigungsvorschläge dort erscheinen, wo das Problem derzeit einen Fehler ohne Autovervollständigung meldet, und das bestehende Verhalten durch einen geeigneten Test abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript
- Bereich
- compilers, developer-experience
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100