Đến nội dung chính
VIEN
CV
Về danh sách dự án
02 / Đồ án học thuật2025 — 2026

The Bad Hats.

Website bán hàng React với giỏ hàng, trạng thái đăng nhập và kiểm tra dữ liệu thanh toán.

Trưởng nhómĐồ án học thuật · API giả lập
ReactTypeScriptReact ContextRedux ToolkitReact RouterAxiosJSON Server
Mã nguồn
Giao diện tái dựng · Dữ liệu mẫu
01 / BỐI CẢNH

Bài toán

Xây dựng SPA thương mại điện tử phục vụ đồ án, kết nối duyệt sản phẩm, giỏ hàng, trạng thái đăng nhập và luồng checkout có kiểm tra dữ liệu.

02 / TRIỂN KHAI

Đóng góp của tôi

01

Cấu trúc cửa hàng

Xây dựng SPA React bằng component TypeScript và điều hướng phía client với React Router.

02

State & tích hợp API

Quản lý giỏ hàng bằng React Context và useState; dùng Redux Toolkit cho trạng thái đăng nhập, sản phẩm và đơn hàng. Tích hợp JSON Server qua Axios client dùng chung.

03

Form & route quản trị

Bổ sung trường bắt buộc khi checkout và kiểm tra giỏ hàng rỗng, xác nhận mật khẩu khi đăng ký, cùng bảo vệ route phía client cho danh sách đơn hàng quản trị.

03 / KIẾN TRÚC

Kết nối các thành phần

  1. 01React / Router
  2. 02Context: giỏ hàng · Redux: đăng nhập / sản phẩm / đơn hàng
  3. 03Axios client dùng chung
  4. 04JSON Server

State giỏ hàng và state Redux được tách riêng; Axios client kết nối ứng dụng với API giả lập.

Một quyết định triển khai

CartProvider chia sẻ sản phẩm, số lượng và tổng tiền giữa cửa hàng và checkout. Redux Toolkit quản lý đăng nhập, sản phẩm và đơn hàng theo từng slice. Axios client dùng chung tập trung cấu hình kết nối API giả lập.

04 / GIAO DIỆN

Minh họa giao diện

Cửa hàng & giỏ hàng — Giao diện tái dựng · Dữ liệu mẫu

Giao diện được tái dựng cho portfolio. Toàn bộ dữ liệu chỉ dùng để minh họa.

05 / NHÌN LẠI

Kết quả & giới hạn

Kết quả thực hiện

Triển khai cửa hàng, state giỏ hàng và ứng dụng, tích hợp API giả lập, kiểm tra form cơ bản và bảo vệ route quản trị phía client. Repository công khai cho phép xem mã nguồn triển khai.

Giới hạn của dự án

JSON Server cung cấp API giả lập. Bảo vệ route phía client không phải phân quyền backend. Bài viết không khẳng định có thanh toán thật, backend production hay triển khai thương mại.

Dự án tiếp theo

Internal Support Platform

Xem chi tiết
05 / Liên hệ

Cùng xây dựng sản phẩm hữu ích.

Tôi đang tìm cơ hội fresher để đóng góp với React và TypeScript, đồng thời phát triển năng lực full-stack.

Gửi email