microsoft / microsoft/TypeScript

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

Aperta
#57,129 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Awaiting More Feedback Suggestion
Lingua principale
Go
Stelle
111k
Fork
14.4k
Merge medio
1g 19h
PR unite (30g)
117

Descrizione

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
    }
}

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Iniziate esaminando la configurazione proposta del loader in .vscode/settings.json e il comportamento di Node.js --loader descritto nell’issue. Determinate come Intellisense risolve attualmente gli import senza estensione, quindi definite i criteri di completamento per usare un loader o loader diversi per directory, inclusi i loader basati su pacchetti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript, node.js, vscode
Ambito
developer-experience, tooling
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.