microsoft / microsoft/TypeScript
In JS, JS containers can't be augmented inside an IIFE
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
var Ns = {};
(function () {
Ns.x = 1
})()
Ns.x
Expected behavior:
No errors. Ns.x should be visible inside and outside the IIFE.
Actual behavior:
No errors, but completion dooesn't suggest 'x' as a property of Ns and Ns.x ends up with type any.
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 damit, die minimale JavaScript-Reproduktion aus dem Issue auszuführen, und vergleiche den inferierten Typ von Ns.x innerhalb und außerhalb der IIFE. Verfolge, wie der Type Checker die Erweiterung von Eigenschaften über die Funktionsgrenze hinweg behandelt, einschließlich der Completion-Ergebnisse. Fertig ist die Aufgabe, wenn Ns.x konsistent inferiert wird und die Completion nach der IIFE ohne Fehler x vorschlägt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, 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