fix(partner): guard null region on proxy order preview
CI / verify (pull_request) Has been cancelled
CI / verify (pull_request) Has been cancelled
Avoid crash when province/city is not selected yet. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -83,8 +83,8 @@ export default function ProxyOrderPage() {
|
||||
quantity,
|
||||
deliveryMode,
|
||||
storeId: deliveryMode === 'ON_SITE_PICKUP' ? storeId || undefined : undefined,
|
||||
receiverCity: deliveryMode === 'ADDRESS' ? region.city || undefined : undefined,
|
||||
receiverDistrict: deliveryMode === 'ADDRESS' ? region.district || undefined : undefined,
|
||||
receiverCity: deliveryMode === 'ADDRESS' ? region?.city || undefined : undefined,
|
||||
receiverDistrict: deliveryMode === 'ADDRESS' ? region?.district || undefined : undefined,
|
||||
}),
|
||||
silent: true,
|
||||
})
|
||||
@@ -93,7 +93,7 @@ export default function ProxyOrderPage() {
|
||||
.finally(() => setPreviewLoading(false));
|
||||
}, 300);
|
||||
return () => clearTimeout(timer);
|
||||
}, [productId, quantity, deliveryMode, storeId, region.city, region.district]);
|
||||
}, [productId, quantity, deliveryMode, storeId, region?.city, region?.district]);
|
||||
|
||||
function startCooldown(setter: (n: number | ((s: number) => number)) => void) {
|
||||
setter(60);
|
||||
@@ -153,7 +153,7 @@ export default function ProxyOrderPage() {
|
||||
if (deliveryMode === 'ON_SITE_PICKUP') {
|
||||
if (!storeId) return '请选择提货门店';
|
||||
} else {
|
||||
if (!region?.province || !region.city || !region.district) return '请选择省市区';
|
||||
if (!region?.province || !region?.city || !region?.district) return '请选择省市区';
|
||||
if (!addressDetail.trim()) return '请填写详细地址';
|
||||
if (!autoReceive) return '配送到址须勾选同意自动收货';
|
||||
}
|
||||
@@ -193,9 +193,9 @@ export default function ProxyOrderPage() {
|
||||
autoReceive: deliveryMode === 'ADDRESS' ? true : undefined,
|
||||
storeId: deliveryMode === 'ON_SITE_PICKUP' ? storeId : undefined,
|
||||
receiverName: receiverName.trim() || undefined,
|
||||
province: deliveryMode === 'ADDRESS' ? region.province : undefined,
|
||||
city: deliveryMode === 'ADDRESS' ? region.city : undefined,
|
||||
district: deliveryMode === 'ADDRESS' ? region.district : undefined,
|
||||
province: deliveryMode === 'ADDRESS' ? region?.province : undefined,
|
||||
city: deliveryMode === 'ADDRESS' ? region?.city : undefined,
|
||||
district: deliveryMode === 'ADDRESS' ? region?.district : undefined,
|
||||
addressDetail: deliveryMode === 'ADDRESS' ? addressDetail.trim() : undefined,
|
||||
productId,
|
||||
quantity,
|
||||
|
||||
Reference in New Issue
Block a user