microsoft / microsoft/TypeScript
Inconsistent behavior of "export as" symbols.
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.4.0-dev.20190305
Search Terms: export alias
Code
This is file of some-lib:
export { LongNameOfInnerClass as PublicNameClass } from './long-name-of-inner-class';
This is other file, that import above lib:
import { PublicNameClass } from 'some-lib';
new PublicNameClass(); // Here hints is OK
new PublicNameClass(wrongArgument); // Error ref to LongNameOfInnerClass
Expected behavior:
TypeScript hints have same "export as" aliases for working code and for errors.
Actual behavior:
TypeScript hints for the working code are different from the hints for errors.
Related Issues:
Not sure, but it seems that this issue has a similar problem: symbolToName does handle exports of namespaces
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 den beiden TypeScript-Codeausschnitten im Bericht unter Verwendung der angegebenen TypeScript-Version. Verfolge, wie der exportierte Alias bei der normalen Vervollständigung im Vergleich zur Diagnose des Konstruktorarguments aufgelöst wird, und ergänze eine Testabdeckung für beide Pfade oder finde eine vorhandene. Als erledigt gilt die Aufgabe, wenn beide Hinweise konsistent PublicNameClass statt LongNameOfInnerClass verwenden.
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
- 40/100