In diesem Artikel werden Sie mit Next.js ein statisches Blog -Framework erstellt, wobei Design und Struktur von Jekyll inspiriert sind. Jekyll ist bekannt für seine einfache Zugang und hohe Kontrolle, und dieser Artikel zielt darauf ab, die n?chsten.js zu nutzen und zu reagieren, um eine neue statische Blog -Aufbaul?sung bereitzustellen. Next.js basiert auf dem Dateisystem und vereinfacht den Konstruktionsprozess statischer Websites.
Eine typische Struktur der Jekyll -Blog -Verzeichnis ist wie folgt:
<code>. ├─── _posts/ ...Markdown 格式的博文├─── _layouts/ ...不同頁面的布局├─── _includes/ ...可復用的組件├─── index.md ...主頁└─── config.yml ...博客配置</code>
Unser Framework wird dieser Verzeichnisstruktur so weit wie m?glich folgen, um die Migration von Blogs von Jekyll zu erleichtern und einfach Beitr?ge und Konfigurationen wiederzuverwenden.
Wenn Sie mit Jekyll nicht vertraut sind, ist es ein statischer Site -Generator, der einfache Text in statische Websites und Blogs umwandelt. Weitere Informationen finden Sie im Jekyll Quick Start Guide.
In diesem Artikel geht davon aus, dass Sie die Grundlagen von React haben. Wenn nicht, lesen Sie den React -Erste -Start -Leitfaden.
Installieren
Next.js basiert auf React und geschrieben in node.js. Daher müssen Sie NPM installieren, bevor Sie NEXT.js, React und React-Dom hinzufügen.
<code>mkdir nextjs-blog && cd $_ npm init -y npm install next react react-dom --save</code>
Um das n?chste Skript in der Befehlszeile auszuführen, müssen wir den n?chsten Befehl zum Skriptabschnitt von package.json hinzufügen.
<code>"scripts": { "dev": "next" }</code>
Führen Sie nun den Befehl npm run dev
zum ersten Mal aus und sehen Sie, was passiert.
<code>$ npm run dev > [email protected] dev /~user/nextjs-blog > next ready - started server on http://m.miracleart.cn/link/4a914e5c38172ae9b61780ffbd0b2f90 Error: > Couldn't find a `pages` directory. Please create one under the project root</code>
Der Compiler fordert auf, dass das Seitenverzeichnis im Rahmen des Projekt Root Directory fehlt. Wir werden im n?chsten Abschnitt das Konzept der Seiten kennenlernen.
Seiten Konzept
Next.js basiert auf dem Seitenkonzept. Jede Seite ist eine React -Komponente (.js oder .jsx), die basierend auf dem Dateinamen der Route zugeordnet ist. Zum Beispiel:
<code> 路由---- ----- /pages/about.js /about /pages/projects/work1.js /projects/work1 /pages/index.js /</code>
Erstellen wir das Pages -Verzeichnis im Projektroot -Verzeichnis und füllen Sie den ersten Seite Index.js mit der Basis -React -Komponente ein.
<code>// pages/index.js export default function Blog() { return</code> Willkommen im n?chsten.js Blog }
Führen Sie npm run dev
, um den Server zu starten, und besuchen Sie http://m.miracleart.cn/link/4a914e5c38172ae9b61780ffbd0b2f90 in Ihrem Browser, um Ihr Blog anzuzeigen.
Aus der Schachtel bekommen wir:
- Hei?es Nachladen, nicht erforderlich, um den Browser für jede Code?nderung zu aktualisieren.
- /Seiten/** statische Erzeugung aller Seiten im Verzeichnis.
- /public/** statischer Dateidienst für Ressourcen im Verzeichnis.
- 404 Fehlerseite.
Besuchen Sie einen beliebigen Weg auf Localhost, um den tats?chlichen Effekt der 404 -Seite zu sehen. Wenn Sie die 404 -Seite anpassen müssen, finden Sie in der n?chsten Dokumentation.
Dynamische Seite
Statische Routing -Seiten werden zum Erstellen von Heimseiten, über Seiten usw. verwendet, um alle Blog -Beitr?ge dynamisch zu erstellen, werden wir die dynamische Routing -Funktionalit?t von Next.js verwenden. Zum Beispiel:
<code> 路由---- ----- /pages/posts/[slug].js /posts/1 /posts/abc /posts/hello-world</code>
Alle Routen wie /Posts /1, /Posts /ABC usw. übereinstimmen /posts/?Slug weibliche. Dies ist besonders nützlich für unsere Blog -Beitr?ge, da wir für jeden Blog -Beitrag keine Datei erstellen m?chten. Stattdessen k?nnen wir Slugs dynamisch übergeben, um den entsprechenden Blog -Beitrag zu rendern.
(Der folgende Inhalt wird weggelassen. Da die L?nge des Artikels zu lang ist, bleibt der Originaltext unver?ndert und die verbleibenden Teile werden vereinfacht und die Bilder werden beibehalten.)
Blog -API, umfasst, Layouts, Homepage, Blog -Seite, Produktionsumgebung Bereitstellung, Verbesserungsvorschl?ge
Der nachfolgende Teil des Artikels beschreibt, wie man eine Blog -API erstellt (alle Blog -Beitr?ge abrufen, einzelne Blog -Beitr?ge erhalten und Parsen konfigurieren), wiederverwendbare Komponenten erstellen (einschlie?lich), Design -Seitenlayout (Layouts) implementieren, Homepage -Blog -Postlisten und individuelle Blog -Postseiten sowie die endgültigen Produktionsanpassung und -Anleitungsvorschl?ge und -Stil -DEG -DEG -DEG -DEG -DEG -DEG -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DECAGING -DEG -Syntax -Legierungsdaten. Basierend auf den Merkmalen und Funktionen von Next.js und nutzen die Funktionen der statischen Standortgenerierung.
Das obige ist der detaillierte Inhalt vonErstellen eines Blogs mit Next.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

CSS -Bl?cke Seitenrenderung, da Browser inline und externe CSS standardm??ig als wichtige Ressourcen anzeigen, insbesondere mit importierten Stylesheets, Header gro?er Mengen an Inline -CSS und nicht optimierten Medienfragestilen. 1. extrahieren kritische CSS und einbetten Sie es in HTML ein; 2. Verz?gerung des Ladens nichtkritischer CSS durch JavaScript; 3.. Verwenden Sie Medienattribute, um das Laden wie Druckstile zu optimieren. 4. Komprimieren und verschmelzen CSS, um Anfragen zu reduzieren. Es wird empfohlen, Tools zum Extrahieren von Schlüssel -CSS zu verwenden, REL = "Vorspannung" zu kombinieren, und verwenden Sie die asynchrone Belastung und verwenden Sie die Medienverz?gerungsladeverletzung, um eine überm??ige Aufteilung und eine komplexe Skriptsteuerung zu vermeiden.

ThebestApproachforcssDependsonTheProject'Sspecificneeds.forlargerProjects, externalcssisbetterDuetomaintainability;

Csssmostlycase-unempfindlich, buturlsandfontfamilynamesarecase-sensitiv.1) Eigenschaften und ValueslikeColor: rot; sensitiv.2) URLSMUTMATTHESERVER'SCASE, z.

AutoPrefixer ist ein Tool, das die Pr?fixe von Anbietern automatisch zu CSS -Attributen basierend auf dem Zielbrowserbereich hinzufügt. 1. Es l?st das Problem, die Pr?fixe mit Fehlern manuell aufrechtzuerhalten. 2. Arbeiten Sie das POSTCSS-Plug-in-Formular durch, analysieren Sie CSS, analysieren Sie Attribute, die vorangestellt werden müssen, und generieren Sie den Code gem?? Konfiguration. 3.. 4. Notizen enthalten nicht manuelles Hinzufügen von Pr?fixen, Konfigurationsaktualisierungen, Pr?fixe nicht alle Attribute, und es wird empfohlen, sie mit dem Pr?prozessor zu verwenden.

CSSCOUNTERSCANATOMATIONSNUMBERSEctions und.1) usecounter-resettoinitialize, counter-IncrementtoIncrease, und Counter () orcounters () todisplayValues.2) kombinierte withjavascriptfordynamiccontentToEsSureAccurateupdates.

In CSS sind Selektor- und Attributnamen fallempfindlich, w?hrend Werte, Namen, URLs und benutzerdefinierte Attribute fallempfindlich sind. 1. Die Auswahl- und Attributnamen sind unempfindlich, z. B. Hintergrundfarbe und Hintergrundfarbe sind gleich. 2. Die hexadezimale Farbe im Wert ist fallempfindlich, aber die benannte Farbe ist fallempfindlich, wie rot und rot ist ungültig. 3. Die URLs sind fallsempfindlich und k?nnen zu Ladeproblemen von Dateien führen. 4. Benutzerdefinierte Eigenschaften (Variablen) sind fallempfindlich und Sie müssen auf die Konsistenz des Falles bei der Verwendung achten.

Theconic-Gradient () FunctionincsScreateScircular GradecentStroTRotateColorStopsaroundAcentralPoint.1.ISISIDEALFORPieCharts, Fortschrittsindikatoren, Farbw?sche und DecorativeBackgrounds.2
