Next.js je výkonný rámec na vytváranie vysokovýkonných aplikácií React. Jednou z jeho funkcií je schopnosť vytvárať vlastné rozloženia pre vaše stránky, čo vám umožní vytvoriť konzistentný dizajn, ktorý sa ľahko udržiava a aktualizuje vo vašej aplikácii.
Vytvorenie vlastného komponentu rozloženia v ďalšom. JS
V priečinku s názvom komponentov vo svojom projekte Next.js vytvorte Layout.jsx a pridajte nasledujúci kód na vytvorenie komponentu rozloženia.
importovať Hlava od'ďalší/hlava'
importovať Hlavička od'./Header.jsx'
importovať Päta od'./Footer.jsx'
konšt Rozloženie = (deti) => (
Moja aplikácia</title>
"stylesheet" href="/static/css/style.css" />
</Head>
{children}
</div>
)
exportovať predvolené rozloženie
< p>Tento komponent importuje komponenty Hlavička a Päta a akceptuje deti ako rekvizity. Vykresľuje deti medzi komponentmi Hlavička a Päta. Keď zalomíte stránku s týmto rozložením, hlavička a päta sa zobrazia hore a dole.
Pomocou Komponent rozloženia
Ak chcete použiť komponent rozloženia, importujte ho do komponentu stránky a použite ho, ako je uvedené nižšie.
import Rozloženie z '../components/Layout'
const Stránka = () => (
Domov</h1>
</Layout>
)
export default Page
Použije sa rozloženie na túto stránku. Tento proces môžete zopakovať na všetkých stránkach, na ktorých chcete použiť rozloženie.
Ak chcete rozloženie použiť na všetkých stránkach v aplikáciách naraz, importujte komponent rozloženia do súboru /page/_app.js a použite ho nasledovne.
importovať Rozloženie z rozpätie> "../components/layout";
funkcia Moja aplikácia({ Component, pageProps } span>) {
návrat (
</Layout>
) ;
}
Doteraz zobrazené príklady použite priečinky Next.js s 12 stránkami. V Next.js 13 vytvoríte rozloženie v priečinku aplikácie (v čase písania je vo verzii beta).
Vytvorenie vlastného rozloženia v priečinku aplikácie
Priečinok app v Next.js 13 vyžaduje, aby ste v jeho základni vytvorili koreňové rozloženie. Toto je rozloženie, ktoré Next.js použije na všetky stránky vašej aplikácie.
Na ukážku vytvorte súbor s názvom layout.jsx a pridajte nasledujúci kód.
Na ukážku vytvorte súbor s názvom layout.jsx. p>
exportovať predvolené funkcia RootLayout({ deti } span>) {
návrat (
"en">
{children}</body>
</html>< br/> );
}
Koreňový komponent rozloženia prijíma a vykresľuje deti. Nižšie sú uvedené niektoré z vecí, ktoré by ste mali vedieť o koreňovom rozložení:
- Musíte ho zahrnúť do priečinka aplikácie.
- Nahrádza _app.js a _document.js v priečinku stránok Next.js 12.
- Musíte explicitne zahrnúť značku HTML a body.
- Štandardne je to serverový komponent.
Ako už bolo spomenuté, koreňové rozloženie sa vzťahuje na všetky stránky, takže ako vytvoríte vlastné rozloženia pre rôzne segmenty trasy?
V priečinku aplikácie môžete definovať trasu vytvorením priečinkov pre každú trasu segment. Napríklad vytvorenie priečinka s názvom články sa namapuje na cestu URL aplikácia/články. Ak chcete pridať ďalšie segmenty trasy, vytvorte podpriečinok v hlavnom priečinku trasy. Napríklad pridanie priečinka s názvom trendy do priečinka články sa namapuje na cestu URL app/articles/trending.
Keď pridáte komponent layout.jsx do priečinka trasy, použije sa na všetky stránky v tomto priečinku segment trasy a jej podpriečinky. Napríklad pridanie komponentu rozloženia do priečinka články sa použije na všetky stránky v trase článkov vrátane tých v podpriečinku trendy. Ak pridáte aj komponent rozloženia do priečinka trendy, rozloženie v priečinku s článkami bude vnorené do neho.
Výhody použitia rozloženia
Next.js vám umožňuje vytvárať komponenty rozloženia, ktoré môžete znova použiť v rôznych stránky. To vám umožní mať konzistentný vzhľad na vašich webových stránkach bez duplikovania kódu na viacerých stránkach. Rozloženia vám navyše pomôžu rýchlo implementovať zmeny, pretože nemusíte robiť zmeny na každej stránke.