Menu
CoddyTech

Ringkasan: Server & Client

Termasuk bagian Dasar-Dasar Next.js dalam perjalanan React di Coddy. Pelajaran 22 dari 47.

challenge icon

Tantangan

Sedang

Rekap bab: tentukan sendiri batas server/client.

Halaman ini menampilkan hidangan di server, tetapi juga memasang onClick langsung pada tombol, sehingga aplikasi sama sekali tidak akan dirender. Perbaiki tanpa menandai halaman sebagai komponen client:

  1. Di components/OpenHours.jsx, buat komponen client ('use client' di baris 1) yang menyimpan boolean open dalam state dan merender tombol dengan id="toggle". Teksnya harus Show hours saat tertutup dan Hide hours saat terbuka.
  2. Saat terbuka, komponen ini juga merender <p> dengan id="hours" dan teks Open 9am-5pm. Saat tertutup, paragraf itu tidak boleh ada.
  3. Di app/page.jsx, ganti tombol yang rusak dan paragraf yang selalu terlihat dengan <OpenHours />, yang diimpor dari '../components/OpenHours'. Heading dan daftar hidangan harus tetap persis seperti semula: halaman tetap menjadi komponen server.

Coba sendiri

import './globals.css';

export const metadata = {
    title: 'My App',
};

export default function RootLayout({ children }) {
    return (
        <html lang="en">
            <body>
                {children}
            </body>
        </html>
    );
}

Semua pelajaran di Dasar-Dasar Next.js