microsoft / microsoft/TypeScript

Respect Node's `--loader` for VS Code Intellisense

Offen
#57,129 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Awaiting More Feedback Suggestion
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.4k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

I would like VS Code to be able to use a custom Node.js loader for Intellisense.

For example, if I remove the .mjs extension from my code, I can no longer see the Intellisense for mime-types.mjs.

But my custom loader does not require the extension.

Here is what I am hoping to see: (without the .mjs extension on the import)

image

I can see the .html reference in the Intellisense drop down.

image

But here is what I actually see:

image

I think that now Node.js loaders are going through the normalization process - heading out of experimental, it is a good time for VS Code to start working on respecting loaders.

Perhaps this could live in .vscode/settings.json:

// .vscode/settings.json
{
    "loader": "./loader.mjs"
}

It would be important to provide different loaders for different directories for more complex projects/monorepos, etc:

// .vscode/settings.json
{
    "loader": {
        "./app-one": "./loaders/my-custom-loader-1.mjs",
        "./app-two": "./loaders/my-custom-loader-2.mjs",
        "./app-three": "react-loader"  // <-- Uses a package as a loader
    }
}

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

Beginnen Sie mit der Prüfung der vorgeschlagenen Loader-Konfiguration in .vscode/settings.json und des im Issue beschriebenen Verhaltens von Node.js --loader. Ermitteln Sie, wie Intellisense derzeit Importe ohne Dateierweiterung auflöst, und definieren Sie anschließend Abschlusskriterien für die Verwendung eines Loaders oder verschiedener Loader pro Verzeichnis, einschließlich paketbasierter Loader.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript, node.js, vscode
Bereich
developer-experience, tooling
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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