next.config.js Optionen
Next.js kann über eine next.config.js
-Datei im Stammverzeichnis Ihres Projekts konfiguriert werden (zum Beispiel neben package.json
).
/** @type {import('next').NextConfig} */
const nextConfig = {
/* Konfigurationsoptionen hier */
}
module.exports = nextConfig
next.config.js
ist ein reguläres Node.js-Modul, keine JSON-Datei. Es wird von der Next.js-Server- und Build-Phase verwendet und ist nicht im Browser-Build enthalten.
Falls Sie ECMAScript-Module benötigen, können Sie next.config.mjs
verwenden:
/**
* @type {import('next').NextConfig}
*/
const nextConfig = {
/* Konfigurationsoptionen hier */
}
export default nextConfig
Sie können auch eine Funktion verwenden:
module.exports = (phase, { defaultConfig }) => {
/**
* @type {import('next').NextConfig}
*/
const nextConfig = {
/* Konfigurationsoptionen hier */
}
return nextConfig
}
Seit Next.js 12.1.0 können Sie eine asynchrone Funktion verwenden:
module.exports = async (phase, { defaultConfig }) => {
/**
* @type {import('next').NextConfig}
*/
const nextConfig = {
/* Konfigurationsoptionen hier */
}
return nextConfig
}
phase
ist der aktuelle Kontext, in dem die Konfiguration geladen wird. Sie können die verfügbaren Phasen einsehen. Phasen können aus next/constants
importiert werden:
const { PHASE_DEVELOPMENT_SERVER } = require('next/constants')
module.exports = (phase, { defaultConfig }) => {
if (phase === PHASE_DEVELOPMENT_SERVER) {
return {
/* Nur für die Entwicklung gültige Konfigurationsoptionen hier */
}
}
return {
/* Konfigurationsoptionen für alle Phasen außer Entwicklung hier */
}
}
Die kommentierten Zeilen sind der Platz, an dem Sie die von next.config.js
erlaubten Konfigurationen einfügen können, die in dieser Datei definiert sind.
Allerdings ist keine der Konfigurationen erforderlich, und es ist nicht notwendig zu verstehen, was jede Konfiguration bewirkt. Stattdessen können Sie nach den Funktionen suchen, die Sie aktivieren oder ändern möchten, und dieser Abschnitt zeigt Ihnen, was zu tun ist.
Vermeiden Sie die Verwendung neuer JavaScript-Funktionen, die in Ihrer Ziel-Node.js-Version nicht verfügbar sind.
next.config.js
wird nicht von Webpack, Babel oder TypeScript geparst.
Diese Seite dokumentiert alle verfügbaren Konfigurationsoptionen: