microsoft / microsoft/TypeScript
Should intellisense suggest block scoped values before they are declared?
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
Currently intellisense suggests every block scoped declaration in scope, even if the suggestion is located within the TDZ. When accepting that suggestion, TypeScript issue an used before its declaration error:
new /**/; // suggests 'Clazz', which results in an error
class Clazz {}
function test(
foo = /**/, // suggests `foo`, `bar` and `baz`, all of them result in an error
bar = /**/, // suggests `bar` and `baz`, both result in an error
) {
let baz = 1;
}
Should intellisense filter out suggestions that would result in an error? If so, it should probably use the same condition as the checker.
Related: #28472 #28471
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
Es werden keine Dateien oder Tests genannt. Beginne damit, die IntelliSense-Vervollständigungslogik für blockbezogene Deklarationen zu finden, und vergleiche deren Filterung mit der used-before-declaration-Bedingung des Checkers; abgeschlossen ist die Aufgabe, wenn TDZ-ungültige Vorschläge wie Clazz, foo, bar und baz ausgeschlossen werden, während gültige Vorschläge weiterhin verfügbar sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript
- Bereich
- 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