Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

155
Views
Mejor manera de establecer nombres dinámicos para elementos en localStorage

Bueno, tengo un artículo en localStorage llamado products . Este elemento contiene una Array de JSON Objects que contiene detalles de productos como quantity , unit_price , etc.

Aquí está la función de activación para agregar productos a la tabla y actualizar la tabla...

 function addProduct() { try { //Add product to localstorage addProductToLocalStorage(); //Update pre order table (products) updateTable(); showAlert('Product added!', 'success', 'alert'); } catch (err) { console.log(err); } }

Este artículo se asigna cuando el usuario quiere agregar productos a una factura, lo uso para calcular los valores de subtotal, impuestos y costo total.

Aquí es donde agrego el producto a los products en localStorage

 function addProductToLocalStorage() { try { //Temporary product let product = JSON.parse(localStorage.getItem("tempProduct")); let item = JSON.parse(localStorage.getItem("products")); //Check if the item already exists let products = item ? item : []; products.push(product); localStorage.setItem("products", JSON.stringify(products)); //Delete item localStorage.removeItem("tempProduct"); } catch (error) { console.log(error); } }

tempProduct es un elemento que contiene información sobre el producto que está agregando el usuario, esto se debe a que almaceno información sobre el producto del servidor que no se imprime al usuario, es solo para hacer cálculos.

El artículo se compensa cuando se crea la factura.

 function createInvoice(){ ... localStorage.removeItem("products"); }

El problema aquí es que si el usuario quiere crear dos o más facturas y agregar productos a las facturas al mismo tiempo, el elemento almacenará los datos de ambas facturas y hará un lío con los valores.

Estoy pensando que tal vez establecer nombres dinámicos para el elemento, como un token único para cada ventana 'Crear Inovice' abierta, me ayudará con esto, pero no sé si hay una mejor solución. Déjame saber cómo lidiarías con esto.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!