اضافه نشدن تعداد محصولات به سبد خرید

1 هفته پیش توسط مهدی کرم زادگان آپدیت شد
آفلاین
user-avatar
مهدی کرم زادگان ( 10096 تجربه )
1 هفته پیش

لینک کوتاه اشتراک گذاری

0

سلام من این تابع زیر رو به عنوان آرگومان به foreach که توی تابع getCartLocalStorage هستش دادم ولی اگه چند تا محصول به سبد خرید اضافه بشه بعد رفرش تعداد اون محصول درست نمایش داده نمیشه.
این تابع :

function createItemCart(
  imgProduct,
  titleProduct,
  priceProduct,
  totalPrice,
  id
) {
  const itemsCart = document.getElementById("items-cart");
  document.querySelector(".total-price").innerText = totalPrice + priceProduct;

  const item = document.createElement("div");
  item.setAttribute("class", "item-cart");

  const imgItem = document.createElement("img");
  imgItem.src = imgProduct;

  const detailItem = document.createElement("div");

  const titleItem = document.createElement("div");
  titleItem.setAttribute("class", "title-item");
  titleItem.innerText = titleProduct;

  const divPrice = document.createElement("div");

  const priceItem = document.createElement("span");
  priceItem.setAttribute("class", "price-item");
  priceItem.innerText = priceProduct;

  const spanToman = document.createElement("span");
  spanToman.innerText = "تومان";

  const qtyItem = document.createElement("div");
  qtyItem.className = "qty-item";
  qtyItem.innerText = "1";
  qtyItem.id = "item" + id;

  const deleteItem = document.createElement("i");
  deleteItem.className = "delete-item";
  deleteItem.innerText = "x";

  deleteItemCart(deleteItem, totalPrice, priceProduct);

  detailItem.appendChild(titleItem);
  detailItem.appendChild(divPrice);
  detailItem.appendChild(qtyItem);
  divPrice.appendChild(priceItem);
  divPrice.appendChild(spanToman);
  item.appendChild(imgItem);
  item.appendChild(detailItem);
  item.appendChild(deleteItem);

  itemsCart.appendChild(item);
}

تابع بالا رو به عنوان آرگومان به foreach زیر دادم:

function getCartLocalStorage() {
  if (localStorage.getItem("cart")) {
    document.querySelector(".empty-cart").style.display = "none";
    document.querySelector(".buy-cart").style.display = "block";
    let items = JSON.parse(localStorage.getItem("cart"));
    const itemsCart = document.getElementById("items-cart");
    let sumQty = 0;
    let totalPrice = 0;

    items.forEach((itemCart) => {
      createItemCart(
        itemCart.img,
        itemCart.title,
        itemCart.price,
        itemCart.totalPrice,
        itemCart.id
      );
      totalPrice += itemCart.price * itemCart.qty;
      document.querySelector(".total-price").innerText = totalPrice;
      sumQty += itemCart.qty;
      document.getElementById("number").innerText = sumQty;
    });
  }
}
آفلاین
user-avatar
مهدی کرم زادگان ( 10096 تجربه )
1 هفته پیش

لینک کوتاه اشتراک گذاری

0

سلام میشه از دوستان کسی کمک کنه؟
@hesammousavi @websaz

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.