🐛 bug: shippingLine undefined

:%s
This commit is contained in:
lytrankieio123
2021-10-21 14:13:07 +07:00
parent 471d4e1aaf
commit e5f3952887
5 changed files with 11 additions and 9 deletions

View File

@@ -122,7 +122,7 @@ export type CartCheckout = {
// Discounts that have been applied on the cart.
discounts?: Discount[]
totalDiscount: number
shippingLine: {
shippingLine?: {
priceWithTax: number
shippingMethod: ShippingMethod
}

View File

@@ -2,7 +2,7 @@ import { Product } from '@commerce/types/product'
import { OperationContext } from '@commerce/api/operations'
import { Provider, VendureConfig } from '../'
import { GetProductQuery } from '../../schema'
import { getProductQuery, getProductDetailQuery } from '../../utils/queries/get-product-query'
import { getProductQuery } from '../../utils/queries/get-product-query'
export default function getProductOperation({
commerce,

View File

@@ -94,10 +94,10 @@ export function normalizeCartForCheckout(order: CartFragment): CartCheckout {
countryCode: order.shippingAddress?.countryCode || '',
phoneNumber: order.shippingAddress?.phoneNumber || '',
},
shippingLine: {
priceWithTax: order.shippingLines[0].priceWithTax / 100,
shippingMethod: order.shippingLines[0].shippingMethod as ShippingMethod
},
shippingLine: order.shippingLines[0] ? {
priceWithTax: order.shippingLines[0]?.priceWithTax / 100,
shippingMethod: order.shippingLines[0]?.shippingMethod as ShippingMethod
}: undefined,
totalDiscount: order.discounts?.reduce((total, item) => total + item.amountWithTax, 0) / 100 || 0,
discounts: order.discounts.map(item => {
return { value: item.amountWithTax, description: item.description }

View File

@@ -49,7 +49,7 @@ const CheckoutBill = ({ data }: CheckoutBillProps) => {
</div>
<div className={s.line}>
Shipping
<div className={s.shipping}>{data?.shippingLine.priceWithTax || 0} {data?.currency?.code}</div>
<div className={s.shipping}>{data?.shippingLine?.priceWithTax || 0} {data?.currency?.code}</div>
</div>
<div className={s.line}>
Estimated Total

View File

@@ -91,8 +91,10 @@ const CheckoutInfo = ({ onViewCart, currency = "" }: CheckoutInfoProps) => {
}
return ''
case CheckoutStep.ShippingMethodInfo:
console.log('oder here: ', order?.shippingLine)
return `${order?.shippingLine.shippingMethod.name}, ${order?.shippingLine.priceWithTax ? `${order?.shippingLine.priceWithTax} ${currency}`: 'Free'}` || ''
if (order?.shippingLine) {
return `${order?.shippingLine.shippingMethod.name}, ${order?.shippingLine.priceWithTax ? `${order?.shippingLine.priceWithTax} ${currency}` : 'Free'}` || ''
}
return ''
default:
return ""
}