Schritt 2: Das Menü-Raster
Teil des Abschnitts Next.js Essentials der React-Journey von Coddy. Lektion 40 von 47.
Aufgabe
EinfachFülle das Menü in app/page.jsx.
- Mach
Homezuasyncund verwendeawait getDishes()aus../lib/menu.js. - Behalte den Hero-Bereich bei und rendere danach ein
<ul className="grid">mit einem<li className="card">pro Gericht (key= der Slug). - Jede Karte enthält ein
<div className="thumb">mitid={'thumb-' + dish.slug}, dememojides Gerichts als Inhalt undstyle={{ background: dish.gradient }}. - Füge anschließend ein
<div className="card-body">ein, das ein<h2 className="card-title">mitid={'name-' + dish.slug}und dem Namen, ein<p className="card-desc">mit der Beschreibung sowie ein<span className="price">mitid={'price-' + dish.slug}enthält, das$und anschließend den Preis anzeigt.
Probier es selbst
import Link from 'next/link';
import './globals.css';
export const metadata = {
title: {
default: 'Coddy Eats',
template: '%s | Coddy Eats',
},
};
export default function RootLayout({ children }) {
return (
<html lang="en">
<body>
<nav className="nav">
<Link className="brand" href="/">Coddy Eats</Link>
<Link id="nav-menu" href="/">Menu</Link>
<Link id="nav-desserts" href="/?category=dessert">Desserts</Link>
</nav>
<div className="container">
{children}
</div>
</body>
</html>
);
}Alle Lektionen in Next.js Essentials
4Server & Client
Zwei Arten von KomponentenDen Fehler lesenDie Zeile „use client“Client-Teile klein haltenServer innerhalb des ClientsRückblick: Server & Client7Clientseitige Navigation
Der aktive LinkProgrammatisches RoutingFiltern mit der URLRoute-HandlerRückblick: Navigation