Absolute Imports und Modul-Pfadalias
Beispiele
Next.js bietet integrierte Unterstützung für die Optionen "paths"
und "baseUrl"
in tsconfig.json
und jsconfig.json
-Dateien.
Diese Optionen ermöglichen es Ihnen, Projektverzeichnisse zu absoluten Pfaden zu aliasieren, wodurch das Importieren von Modulen vereinfacht wird. Zum Beispiel:
// vorher
import { Button } from ' ../../../components/button '
// danach
import { Button } from ' @/components/button '
Hinweis : create-next-app
wird Sie auffordern, diese Optionen für Sie zu konfigurieren.
Die Konfigurationsoption baseUrl
ermöglicht es Ihnen, direkt von der Projektstammebene zu importieren.
Ein Beispiel für diese Konfiguration:
{
" compilerOptions " : {
" baseUrl " : "."
}
}
export default function Button () {
return < button >Klick mich</ button >
}
import Button from ' components/button '
export default function HomePage () {
return (
<>
< h1 >Hallo Welt</ h1 >
< Button />
</>
)
}
Zusätzlich zur Konfiguration des baseUrl
-Pfads können Sie die Option "paths"
verwenden, um Modul-Pfade zu "aliasen".
Beispielsweise ordnet die folgende Konfiguration @/components/*
zu components/*
zu:
{
" compilerOptions " : {
" baseUrl " : "." ,
" paths " : {
" @/components/* " : [ "components/*" ]
}
}
}
export default function Button () {
return < button >Klick mich</ button >
}
import Button from ' @/components/button '
export default function HomePage () {
return (
<>
< h1 >Hallo Welt</ h1 >
< Button />
</>
)
}
Jeder der "paths"
ist relativ zum baseUrl
-Standort. Beispiel:
{
" compilerOptions " : {
" baseUrl " : "src/" ,
" paths " : {
" @/styles/* " : [ "styles/*" ],
" @/components/* " : [ "components/*" ]
}
}
}
import Button from ' @/components/button '
import ' @/styles/styles.css '
import Helper from ' utils/helper '
export default function HomePage () {
return (
< Helper >
< h1 >Hallo Welt</ h1 >
< Button />
</ Helper >
)
}