Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

122
Visualizações
Tener problema con la función de aumento de artículo

Mi resultado es ver item.acf.count como string y no como number . ¿Cómo puedo convertir esto en número?

Aquí está la función a continuación.

 increaseItem = (id) => { const { cart } = this.state; cart.forEach(item => { if (item.id === id) { item.acf.count += 1 } }) this.setState({ cart:cart }) }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Mi resultado es ver item.acf.count como una cadena y no como un número. por favor como puedo convertir es a numero

Debe asegurarse de que el estado inicial item.acf.count sea un tipo de número para que esta operación count: item.acf.count + 1 funcione correctamente y devuelva un tipo de número. Siempre que sus actualizadores de estado mantengan el estado invariable de item.acf.count como un número, debería funcionar como se esperaba.

Además, el controlador de increaseItem de artículos está mutando el estado del carrito y no está creando nuevas referencias de matriz/objeto.

 increaseItem = (id) => { const { cart } = this.state; // <-- cart is reference to cart state cart.forEach(item => { if (item.id === id) { item.acf.count += 1; // <-- mutation! } }); this.setState({ cart: cart // <-- cart state reference back into state }) }

En su lugar, debe copiar superficialmente el carrito y luego también copiar superficialmente el elemento del carrito ( cualquier otra propiedad anidada ) que desee actualizar. También sugiero usar una actualización de estado funcional para que esté actualizando correctamente desde el estado anterior y no cualquier valor de estado cerrado en el alcance de devolución de llamada de increaseItem de elementos.

 increaseItem = (id) => { this.setState(prevState => ({ cart: prevState.cart.map(item => item.id === id ? { ...item, acf: { ...item.acf, count: item.acf.count + 1 } } : item), })); }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda