• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

95
Vistas
Pasar el valor del componente secundario al principal y luego al componente secundario nuevamente

Quería pasar la cantidad total de Cart.js a App.js y luego a info.js. Como tengo esta cantidad para calcular todos los artículos del carrito y luego un campo de descuento que resultará en totalAmount

Lo que hice fue hacerlo todo en App.js

 const amount = cartItems.reduce( (price, item) => price + item.quantity * item.price, 0 ); const [discount, setDiscount] = useState(0); let totalAmount = Number(amount) - (Number(amount) * Number(discount)) / 100; console.log(totalAmount, "tota amt from the App.js");

Y luego pase la cantidad total a los artículos del carrito y al info.js

Para cart.js, el monto total variará desde aquí porque también calculará el descuento si alguna vez el usuario ingresó un valor para el descuento. No estoy seguro si estoy haciendo esto correctamente donde también paso el setDiscount aquí como accesorios en Cart.js

codesandbox: https://codesandbox.io/s/add-to-cart-sampled-2-with-material-ui-table-pagination-with-reduced-cart-items-firebase-5id6gs?file=/src/Cart .js:7359-7876

 const Cart = ({ cartItems, handleCartClearance, handleRemove, handleAdd, amount, totalAmount, discount, setDiscount }) => {

Para mostrarlo:

 <div> <b>Total Amount :{amount}</b> <br /> <label>Discount in percentage</label> <input type="number" placeholder="Discount" value={discount} onChange={(e) => setDiscount(e.target.value)} /> <br /> <b> Total amount but in string:{" "} {totalAmount.toLocaleString(navigator.language, { minimumFractionDigits: 2 })} </b> </div>
about 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No veo ningún problema con la lógica y debería funcionar bien, pero personalmente usaría Redux para hacer eso.

about 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda