typescript - Hvordan ignorere/ekskludere index-fil fra VS Code/Intellisense/Autocomplete?


Jeg jobber med et bibliotekprosjekt som har en lib.ts-fil i arbeidsrommets rot som definerer alle offentlige eksport av biblioteket som følger:

export * from "./a/a.ts"
export * from "./b/b.ts"
export * from "./c/c.ts"

Jeg bruker også VS Code-autofullføring (ctrl+mellomrom) mye for å la VS Code organisere/legge til imports automatisk mens jeg utvikler. Dessverre fortsetter Intellisense å importere fra lib.ts i stedet for fra den opprinnelige filen som definerte eksporten.

Så, forutsatt at a trenger b, ville VS Code organisere importene i a.ts som følger:

import { b } from "../lib"

export const a = b(1)

Det resulterer i sirkulære avhengigheter ved byggetid, noe som ser ut til å forvirre rollup:

  lib.ts -> a/a.ts -> lib.ts -> b/b.ts

Finnes det en måte å fortelle VS Code om å ignorere lib.ts og importere b fra dens opprinnelige kilde, slik som dette?

import { b } from "../b/b"

export const a = b(1)

Svar #1

Jeg støtte på dette nøyaktig samme problemet og fant denne innstillingen i preferansene:

typescript.preferences.autoImportFileExcludePatterns

I ditt tilfelle kunne du legge til en glob som dette:

{
  "typescript.preferences.autoImportFileExcludePatterns": [
    "../../lib.ts"
  ],
}

og da vil det ikke foreslå importeringer fra noen lib.ts-filer som du ikke ønsker å importere fra.

Relaterte artikler