microsoft / microsoft/TypeScript

Inconsistent behavior of "export as" symbols.

Offen
#30,223 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bug Domain: Error Messages Help Wanted
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

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Ö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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.