UNPKG

wgp-next-shop-ui-lib

Version:

Библиотека UI-компонентов для Next-Shop с поддержкой e-commerce функций

27 lines (20 loc) 788 B
"use client"; import { useState, useEffect } from "react"; export default function useCart() { const [cartItems, setCartItems] = useState([]); const [totalQuantity, setTotalQuantity] = useState(0); useEffect(() => { const updateCart = () => { const cartData = localStorage.getItem("cart"); const cart = cartData ? JSON.parse(cartData) : []; setCartItems(cart); const quantity = cart.reduce((sum, item) => sum + item.quantity, 0); setTotalQuantity(quantity); }; // Подписка на событие обновления корзины window.addEventListener("cartUpdated", updateCart); updateCart(); return () => window.removeEventListener("cartUpdated", updateCart); }, []); return { cartItems, totalQuantity }; }