NX, Vite og TypeScript-baner


I prosjektet mitt bruker vi NX 19.1.1, Vite 5.2.12 og TypeScript.

Vi har noen TypeScript-stier definert i vår tsconfig.json-eksempel:

{
  "compilerOptions": {
    "paths": {
      "@components/*": ["src/components/*"] 
    }
  }
}

De fungerer perfekt. (både fra VS Code sitt ståsted, og også etter at prosjektet er bygget)

Problemet er at når jeg kjører bygget, ser jeg mange meldinger som dette i loggene: (lokalt bygg)

app-name: [Nx Vite TsPaths] Unable to resolve @components/common/button with tsconfig paths. Using fallback file matching.
app-name: [Nx Vite TsPaths] Trying to resolve file from config in /app-name/tsconfig.json
app-name: [Nx Vite TsPaths] Resolved @components/common/button to /app-name/src/components/common/button.tsx

Når man distribuerer til miljø, er Jenkins-loggene litt forskjellige, den siste linjen er:

app-name: [Nx Vite TsPaths] Resolved @components/common/button to /home/ubuntu/workspace/branch_name/src/components/common/button.tsx

Alt fungerer korrekt, men problemet er at vi har mange av disse loggførte elementene i loggene, siden hver import som bruker stien logger alle 3 av disse linjene. Så loggene våre får mer enn 200 linjer med overflødige oppføringer.

Også forventer jeg at hvis vi løser det, og får det til å søke på riktig sted fra starten av, kan det også gjøre byggingen raskere (selv om det er med veldig lite)

Andre ting å vite: som forklart ovenfor, bruker vi Vite og NX, og vår vite.config.ts ser omtrent slik ut:

import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';

export default defineConfig({
  plugins: [react(), nxViteTsPaths()]
})

Det beste vil være om du kan hjelpe meg med å finne hva som forårsaker problemet og fikse det.
Også akseptabelt, hvis du kan deaktivere denne typen logging når du kjører byggingen.

Relaterte artikler