Menu
CoddyTech

Bước 6: Thêm vào giỏ hàng

Thuộc phần Kiến thức thiết yếu về Next.js trong hành trình React của Coddy. Bài học 44 trên 47.

challenge icon

Thử thách

Dễ

Thêm nút giỏ hàng và giữ trang ở phía máy chủ.

  1. Hoàn thiện tệp components/CartButton.jsx, bắt đầu bằng 'use client';.
  2. Lưu count bằng useState(0). Hiển thị một <button id="add-to-cart" className="primary"> có nội dung Add to cart, nút này tăng giá trị khi được nhấp.
  3. Bên dưới, hiển thị <p id="cart-count" className="cart"> với nội dung là giá trị đếm, tiếp theo là x, rồi đến prop name, sau đó là in the cart, ví dụ 2 x Street Tacos in the cart.
  4. Trong app/menu/[slug]/page.jsx, hiển thị <CartButton name={dish.name} /> bên dưới giá. Không thêm 'use client' vào trang.

Tự làm thử

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

Tất cả bài học trong Kiến thức thiết yếu về Next.js