Assets
Next.js kann statische Assets wie Bilder aus dem übergeordneten public
-Verzeichnis bereitstellen. Dateien in public
können ähnlich wie pages
vom Stammverzeichnis der Anwendung aus referenziert werden.
Das public
-Verzeichnis ist auch nützlich für robots.txt
, Google Site Verification und andere statische Assets. Weitere Informationen finden Sie in der Dokumentation zu Static File Serving.
Profilbild herunterladen
Laden Sie zunächst Ihr Profilbild herunter.
- Laden Sie Ihr Profilbild im
.jpg
-Format herunter (oder verwenden Sie diese Datei). - Erstellen Sie ein
images
-Verzeichnis innerhalb despublic
-Verzeichnisses. - Speichern Sie das Bild als
profile.jpg
impublic/images
-Verzeichnis. - Die Bildgröße sollte etwa 400px mal 400px betragen.
- Sie können die ungenutzte SVG-Logo-Datei direkt im
public
-Verzeichnis löschen.
Nicht optimiertes Bild
Mit regulärem HTML würden Sie Ihr Profilbild wie folgt einfügen:
Dies bedeutet jedoch, dass Sie manuell Folgendes handhaben müssen:
- Sicherstellen, dass Ihr Bild auf verschiedenen Bildschirmgrößen responsiv ist
- Optimieren Ihrer Bilder mit einem Drittanbieter-Tool oder einer Bibliothek
- Laden von Bildern nur, wenn sie in den Viewport gelangen
Und mehr. Next.js bietet stattdessen eine Image
-Komponente, die dies für Sie übernimmt.
Image-Komponente und Bildoptimierung
next/image
ist eine Erweiterung des HTML-<img>
-Elements, das für das moderne Web weiterentwickelt wurde.
Next.js unterstützt standardmäßig auch die Bildoptimierung. Dies ermöglicht das Skalieren, Optimieren und Bereitstellen von Bildern in modernen Formaten wie WebP, wenn der Browser dies unterstützt. Dadurch wird vermieden, dass große Bilder an Geräte mit kleinerem Viewport gesendet werden. Es ermöglicht Next.js auch, zukünftige Bildformate automatisch zu übernehmen und sie an Browser zu liefern, die diese Formate unterstützen.
Die automatische Bildoptimierung funktioniert mit jeder Bildquelle. Selbst wenn das Bild von einer externen Datenquelle wie einem CMS gehostet wird, kann es dennoch optimiert werden.
Verwendung der Image-Komponente
Anstatt Bilder zur Build-Zeit zu optimieren, optimiert Next.js Bilder bei Bedarf, wenn Benutzer sie anfordern. Im Gegensatz zu statischen Site-Generatoren und rein statischen Lösungen erhöhen sich Ihre Build-Zeiten nicht, unabhängig davon, ob Sie 10 oder 10 Millionen Bilder bereitstellen.
Bilder werden standardmäßig lazy geladen. Das bedeutet, dass Ihre Seitenleistung nicht durch Bilder außerhalb des Viewports beeinträchtigt wird. Bilder werden geladen, wenn sie in den Viewport gescrollt werden.
Bilder werden immer so gerendert, dass Cumulative Layout Shift vermieden wird, ein Core Web Vital, das Google für das Ranking in Suchergebnissen verwenden wird.
Hier ist ein Beispiel für die Verwendung von next/image
zur Anzeige unseres Profilbilds. Die height
- und width
-Props sollten die gewünschte Render-Größe mit dem gleichen Seitenverhältnis wie das Quellbild haben.
Hinweis: Wir werden diese Komponente später in "Polishing Layout" verwenden, Sie müssen sie noch nicht kopieren.
Weitere Informationen zur automatischen Bildoptimierung finden Sie in der Dokumentation.
Weitere Informationen zur
Image
-Komponente finden Sie in der API-Referenz fürnext/image
.