microsoft / microsoft/TypeScript
Inference from rest parameters has strange inconsistent results
Offen
Dieses Issue hat noch niemand übernommen.
Needs Investigation
- Vorherrschende Sprache
- Go
- Sterne
- 111k
- Forks
- 14.3k
- Ø Merge
- 1 T. 19 Std.
- Gemergte PRs (30 T.)
- 117
Beschreibung
declare function foo(...x: readonly any[]): any
type FooParams = Parameters<typeof foo>;
declare function bar(...x: readonly number[]): any
type BarParams = Parameters<typeof bar>
Expected:
FooParamsisany[]orreadonly any[]BarParamsisnumber[]orreadonly number[]
Actual
FooParamsisunknown[]BarParamsisnever
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
Beginne mit der verlinkten TypeScript Playground-Reproduktion und vergleiche die inferierten Typen von FooParams und BarParams mit den angegebenen erwarteten Ergebnissen. Verfolge die Typinferenz, die bei der Anwendung von Parameters auf readonly-Restparameter beteiligt ist. Als abgeschlossen gilt die Aufgabe, wenn die beiden Beispiele eine akzeptierte erwartete Form erzeugen und durch Regressionstests abgedeckt sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript
- Bereich
- compilers
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100