From 6320efdce499d96796e1727d9065d2b1c1c00c53 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Tue, 7 Mar 2023 09:18:53 +0700 Subject: fix button buy on product detail --- src/lib/checkout/components/Checkout.jsx | 27 ++++++++++++++------------- src/lib/product/components/Product.jsx | 18 +++++++++++++++--- 2 files changed, 29 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/lib/checkout/components/Checkout.jsx b/src/lib/checkout/components/Checkout.jsx index b4fd33ff..ef0b1d54 100644 --- a/src/lib/checkout/components/Checkout.jsx +++ b/src/lib/checkout/components/Checkout.jsx @@ -64,19 +64,26 @@ const Checkout = () => { useEffect(() => { const loadProducts = async () => { - const cart = getCart() - const variantIds = _.filter(cart, (o) => o.selected == true) - .map((o) => o.productId) - .join(',') + let variantIds = '' + let { query } = router + if (query?.productId) { + variantIds = query.productId + } else { + const cart = getCart() + variantIds = _.filter(cart, (o) => o.selected == true) + .map((o) => o.productId) + .join(',') + } + const dataProducts = await CartApi({ variantIds }) const dataProductsQuantity = _.map(dataProducts, (o) => ({ ...o, - quantity: getItemCart({ productId: o.id }).quantity + quantity: query.quantity ? query.quantity : getItemCart({ productId: o.id }).quantity })) setProducts(dataProductsQuantity) } loadProducts() - }, []) + }, [router]) useEffect(() => { if (products) { @@ -128,7 +135,7 @@ const Checkout = () => { toast.error('Gagal melakukan transaksi, terjadi kesalahan internal') return } - + for (const product of products) deleteItemCart({ productId: product.id }) if (paymentMethod == 'midtrans') { const payment = await axios.post( @@ -296,12 +303,6 @@ const Checkout = () => { {isLoading ? 'Loading...' : 'Bayar'} - -