مهدی کرم زادگان
3 سال پیش توسط مهدی کرم زادگان مطرح شد
1 پاسخ

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

سلام من این تابع زیر رو به عنوان آرگومان به 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;
    });
  }
}

ثبت پرسش جدید
مهدی کرم زادگان
@MahdiKzn 3 سال پیش مطرح شد
0

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


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام