TypeScriptKonfiguracja tsconfig
"moduleResolution"
Algorytm, którym kompilator odnajduje pliki wskazane w importach.
Przykład
#JSON
{
"compilerOptions": {
"module": "ESNext",
"moduleResolution": "Bundler"
}
}Definicja i zastosowanie
#Opcja moduleResolution określa, jak kompilator zamienia napis z importu, na przykład "react" albo "./utils", na konkretny plik z kodem i typami.
Bundler naśladuje zachowanie narzędzi takich jak Vite czy webpack: pozwala pomijać rozszerzenia plików i rozumie pole exports w pakietach. NodeNext odwzorowuje dokładne zasady Node.js, w którym w modułach ES rozszerzenie w imporcie jest obowiązkowe.
Starsza wartość Node (nazywana też node10) nie obsługuje pola exports i nie jest już zalecana w nowych projektach.
Składnia
#Składnia
"moduleResolution": "Bundler"Więcej przykładów
#TypeScript
// moduleResolution: "NodeNext", plik ES
import { add } from './math.js'
// W NodeNext podajesz rozszerzenie .js, nawet gdy plik źródłowy to math.ts.Dobre praktyki
#- W aplikacjach z bundlerem używaj
Bundler, w kodzie dla Node.jsNodeNext. - Jeśli import pakietu nagle „nie ma typów”, sprawdź, czy
moduleResolutionrozumie poleexportstego pakietu.
Powiązane hasła
#Widzisz błąd albo brakuje przykładu? Napisz do nas.