Menu
Coddy logo textTech

Étape 6 : Ajouter au panier

Fait partie de la section L'essentiel de Next.js du Journey React de Coddy. Leçon 44 sur 47.

challenge icon

Défi

Facile

Ajoute un cart button et garde la page sur le serveur.

  1. Complète le fichier components/CartButton.jsx en commençant par 'use client';.
  2. Conserve un count dans useState(0). Affiche un <button id="add-to-cart" className="primary"> contenant Add to cart, qui l’incrémente lors d’un clic.
  3. Affiche en dessous un <p id="cart-count" className="cart"> contenant le count, puis x, puis la prop name, puis in the cart, par exemple 2 x Street Tacos in the cart.
  4. Dans app/menu/[slug]/page.jsx, affiche <CartButton name={dish.name} /> sous le price. N’ajoute pas 'use client' à la page.

Essayez vous-même

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>
    );
}

Toutes les leçons de L'essentiel de Next.js