microsoft / microsoft/TypeScript
Make JS/TS Import fix insert import in linter specified order
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 111k
- Forks
- 14.4k
- Ø Merge
- 1 T. 19 Std.
- Gemergte PRs (30 T.)
- 117
Beschreibung
Popular linting rules in the TypeScript community require imports to be in alphabetic order (see ordered-imports in tslint:recommended). This is generally useful for readability of imports.
In VS Code, when a developer references an external module that hasn't been imported, VS Code offers a useful fix, which adds the appropriate import:

This is extremely useful! Thanks you! 🎉
However, once automatically imported, the import is just added to the end of the import list, leading to a linter error (since it's not in alphabetic order)😕:

You can then auto-fix the import issue (VS Code is aware of the TSLint preferences):

Would it be possible to short-circuit these steps such that when a developer "fixes" a missing import, it automatically inserts it in the appropriate order based on linting rules? FWIW, this also applies to the JS community (eslint has import order rules as well).
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
Das Issue beschreibt die automatische Behebung fehlender Imports in VS Code und deren Zusammenspiel mit den Import-Order-Regeln von TypeScript und ESLint oder TSLint, nennt jedoch keine Quelldateien oder Tests. Beginne damit, den Codepfad für automatische Imports und die bestehende Behandlung der Import-Reihenfolge zu finden. Als abgeschlossen gilt die Aufgabe, wenn neu eingefügte Imports der jeweils konfigurierten Reihenfolge für JavaScript und TypeScript folgen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, typescript
- Bereich
- developer-experience, tooling
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100