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.
- Mache
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 Card enthält ein
<div className="thumb">mitid={'thumb-' + dish.slug}, dememojides Gerichts als Inhalt undstyle={{ background: dish.gradient }}. - Danach ein
<div className="card-body">, das ein<h2 className="card-title">mitid={'name-' + dish.slug}und dem Namen enthält, ein<p className="card-desc">mit der Beschreibung sowie ein<span className="price">mitid={'price-' + dish.slug}, das$gefolgt vom 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 'use client'-ZeileClient-Teile klein haltenServer innerhalb von ClientZusammenfassung: Server & Client7Client-seitige Navigation
Der aktive LinkProgrammatisches RoutingFiltern mit der URLRoute-HandlerZusammenfassung: Navigation