JSX에서 switch-case문
JSX에서 switch-case문을 사용하려면 즉시 실행함수를 사용하면 된다.
if문 중첩도 마찬가지!
const OrderStatus = () => {
const { status, payment, shipping } = useOrder()
return (
<div>
{(() => {
if (status === 'PENDING' && payment.status === 'WAITING') {
return <PaymentWaitingMessage deadline={payment.deadline} />
}
if (status === 'PROCESSING') {
switch(shipping.status) {
case 'PREPARING':
return <PreparingShipment estimatedDate={shipping.estimatedDate} />
case 'IN_DELIVERY':
return <InDeliveryInfo trackingNumber={shipping.trackingNumber} />
case 'DELIVERED':
return <DeliveredInfo deliveryDate={shipping.deliveryDate} />
default:
return null
}
}
return null
})()}
</div>
)
}