Menu
Coddy logo textTech

Zusammenfassung: Navigation

Teil des Abschnitts Next.js Essentials der React-Journey von Coddy — Lektion 38 von 47.

challenge icon

Aufgabe

Mittel

Kapitelzusammenfassung: eine kleine App, beide Richtungen der URL: eine Navigationsleiste, die liest, wo sie sich befindet, und eine Menüseite, die nach dem Query-String gefiltert wird.

  1. Rufen Sie in components/Nav.jsx usePathname() auf und geben Sie jedem Link die className "nav-link active", wenn sein href mit dem aktuellen Pfad übereinstimmt, und ansonsten die einfache className "nav-link". Home ist /, Menu ist /menu.
  2. Lesen Sie in app/menu/page.jsx die Eigenschaft category aus searchParams aus (denken Sie daran, dass es ein Promise ist) und zeigen Sie nur die passenden Gerichte an, oder alle, wenn keine Kategorie angegeben ist.

/menu?category=pizza sollte 2 der 4 Gerichte anzeigen, wobei der Menu-Link hervorgehoben ist.

Probier es selbst

import './globals.css';
import Nav from '../components/Nav.jsx';

export const metadata = {
    title: 'Coddy Eats',
};

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

Alle Lektionen in Next.js Essentials