Next.js adalah framework yang kuat untuk membangun aplikasi React berperforma tinggi. Salah satu fiturnya adalah kemampuan untuk membuat tata letak khusus untuk halaman Anda yang memungkinkan Anda membuat desain konsisten yang mudah dipelihara dan diperbarui di seluruh aplikasi Anda.
Membuat Komponen Tata Letak Kustom di Berikutnya. JS
Di folder bernama komponen di proyek Next.js Anda, buat Layout.jsx dan tambahkan kode berikut untuk membuat komponen tata letak.
impor Kepala dari'berikutnya/kepala'
impor Tajuk dari'./Header.jsx'
impor Catatan kaki dari'./Footer.jsx'
const Tata letak = (anak-anak) => (
Aplikasi Saya</title>
"stylesheet" href="/static/css/style.css" />
</Head>
{anak-anak}
</div>
)
ekspor default Tata Letak
< p>Komponen ini mengimpor komponen Header dan Footer dan menerima turunan sebagai alat peraga. Itu merender
anak-anak di antara komponen Header dan Footer. Saat Anda membungkus halaman dengan Layout ini, Header, dan Footer akan ditampilkan di bagian atas dan bawah. Menggunakan Komponen Tata Letak
Untuk menggunakan komponen tata letak, impor ke komponen halaman dan gunakan seperti yang ditunjukkan di bawah ini.
import Tata Letak dari '../components/Layout'
const Halaman = () => (
Beranda</h1>
</Layout>
)
ekspor default Halaman
Ini akan menerapkan tata letak ke halaman ini. Anda dapat mengulangi proses ini ke semua halaman yang tata letaknya ingin Anda terapkan.
Untuk menggunakan tata letak di semua halaman dalam aplikasi sekaligus, impor komponen layout ke dalam file /page/_app.js dan gunakan sebagai berikut.
import Layout from rentang> "../components/layout";
fungsi MyApp({ Komponen, pageProps } rentang>) {
return (
</Layout>
) ;
}
Contoh yang ditampilkan sejauh ini gunakan folder Next.js 12 halaman. Di Next.js 13, Anda membuat layout di folder app (saat penulisan, masih dalam versi beta).
Membuat Tata Letak Kustom di Folder Aplikasi
Folder aplikasi di Next.js 13 mengharuskan Anda membuat tata letak akar di dasarnya. Ini adalah layout yang akan diterapkan Next.js ke semua halaman aplikasi Anda.
Untuk mendemonstrasikan, buat file bernama layout.jsx dan tambahkan kode berikut. p>
export default function RootLayout({ children } span>) {
kembali (
"en">
{anak-anak}</body>
</html>< br/> );
}
Komponen tata letak root menerima dan merender anak-anak. Di bawah ini adalah beberapa hal yang harus Anda ketahui tentang tata letak root:
- Anda harus memasukkannya ke dalam folder app.
- Ini menggantikan _app.js dan _document.js di folder halaman Next.js 12.
- Anda harus menyertakan tag HTML dan body secara eksplisit.
- Ini adalah komponen server secara default.
Seperti yang disebutkan, tata letak root berlaku untuk semua halaman, jadi bagaimana Anda membuat tata letak khusus untuk segmen rute yang berbeda?
Di folder aplikasi, Anda dapat menentukan rute dengan membuat folder untuk setiap rute segmen. Misalnya, membuat folder bernama artikel dipetakan ke jalur URL aplikasi/artikel. Untuk menambahkan segmen rute lebih lanjut, buat subfolder di dalam folder rute utama. Misalnya, menambahkan folder bernama trending di dalam folder artikel akan dipetakan ke jalur URL app/articles/trending.
Bila Anda menambahkan komponen layout.jsx ke folder rute, itu akan diterapkan ke semua halaman di dalamnya segmen rute dan subfoldernya. Misalnya, menambahkan komponen tata letak ke folder artikel akan berlaku untuk semua halaman di rute artikel, termasuk yang ada di subfolder trending. Jika Anda juga menambahkan komponen tata letak di folder trending, tata letak di folder artikel akan bersarang di dalamnya.
Keuntungan Menggunakan Tata Letak
Next.js memungkinkan Anda membuat komponen tata letak yang dapat digunakan kembali di berbagai halaman. Ini memungkinkan Anda memiliki tampilan yang konsisten di seluruh situs web Anda tanpa menduplikasi kode di beberapa halaman. Selain itu, tata letak membantu Anda menerapkan perubahan dengan cepat karena Anda tidak perlu melakukan perubahan pada setiap halaman.