Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

125
Vistas
cómo agregar a un almacenamiento local en lugar de reemplazar cuando se pasa un nuevo objeto

Tengo un carrito de compras, cuando se presiona el botón "Agregar al carrito", establece el objeto en el almacenamiento local.

 const addToCartCookie = () => { let cartData = { id: product._id, name: product.name, slug: product.slug, productPictures: product.productPictures[0].img, description: "sabdsjbfjsd", price: product.storePrice, quantity: itemCount, }; window.localStorage.setItem("cart", JSON.stringify(cartData)); };

Si se pulsa de nuevo el botón "Añadir al carrito", se reemplaza el objeto anterior. Necesito agregar cada objeto si el producto._id no existe en la llamada al botón "agregar al carrito". Si existe product._id (si ya existe el producto), necesito cambiar la cantidad (la cantidad del antiguo + la cantidad del nuevo)

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Primero necesita su elemento localStorage como una matriz, luego verifique su existencia primero, cree si no existe, empuje después de analizar la matriz, luego vuelva a secuenciar para guardar los cambios.

 const itemToAdd = { id: product._id, name: product.name, slug: product.slug, productPictures: product.productPictures[0].img, description: "sabdsjbfjsd", price: product.storePrice, quantity: itemCount, }; const addToCartCookie = (cartItem) => { const cart = window.localStorage.getItem('cart'); if(cart === null) { window.localStorage.setItem('cart', JSON.stringify([cartItem])); } else { const getCurrentCart = window.localStorage.getItem('cart'); const currentCart = JSON.parse(getCurrentCart); currentCart.push(cartItem); window.localStorage.setItem('cart', JSON.stringify(currentCart)); } };

usar así

 addToCartCookie(itemToAdd)
about 4 years ago · Juan Pablo Isaza Denunciar

0

Trate de usar este enfoque.

Haz una matriz item_array .

Cada vez que agregue un artículo a su carrito, primero empújelo en item_array y luego configure el item_array completo en localStorage.

Antes de agregar más artículos al carrito, obtenga item_array de localStorage e inserte el nuevo artículo en item_array . Luego, vuelva a insertar este item_array con un nuevo elemento en el localStorage.

Espero que entiendas lo esencial, lo que estamos tratando de hacer aquí.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Ese es el flujo de trabajo para colocar un nuevo producto en su matriz localStorage.

 let current = [ {p: "abc", q: 2}, {p: "def", q: 1}, ] let str = JSON.stringify(current); console.log('store this string in localStorage', str) console.log("read the string from localstorage"); let arr = JSON.parse(str) console.log(arr) let newProduct = {p: "hij", q: 3} arr.push(newProduct) console.log(arr)

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda