"outDir" i "rootDir"

Folder, do którego trafia skompilowany kod, i folder źródeł.

Na tej stronie

Przykład

#
JSON
{
  "compilerOptions": {
    "rootDir": "./src",
    "outDir": "./dist",
    "declaration": true
  },
  "include": ["src"]
}

Definicja i zastosowanie

#

Opcja outDir wskazuje folder na wygenerowane pliki JavaScript (i ewentualnie pliki .d.ts). Bez niej kompilator zapisuje wynik obok plików źródłowych, co szybko robi bałagan w projekcie.

rootDir określa folder bazowy źródeł. Struktura folderów wewnątrz rootDir jest odtwarzana w outDir: plik src/utils/format.ts trafi do dist/utils/format.js.

W projektach z bundlerem lub frameworkiem (Next.js, Vite) kompilację wykonuje narzędzie budujące, a tsconfig często ma noEmit: true. Wtedy outDir nie ma znaczenia.

Składnia

#
Składnia
"rootDir": "./src",
"outDir": "./dist"

Dobre praktyki

#
  • Dodaj folder dist do .gitignore. Wygenerowany kod nie powinien trafiać do repozytorium.
  • Opcja declaration: true generuje pliki .d.ts z typami, potrzebne przy publikowaniu bibliotek.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.