---
# System prepended metadata

title: 購物車

---

# 購物車
## Notification 公告(API)/競標入口/資訊/返回大車

Interface
```typescript
Notification.propTypes = {
  GA: PropTypes.string,
  notificationType:PropTypes.oneOf(['button', 'a']).isRequired,
  notificationColor:PropTypes.oneOf(['grayLighter']),
  startIcon:PropTypes.oneOf(ICON_NAME),
  text:PropTypes.string,
  link:PropTypes.string,
  endIcon:PropTypes.oneOf(ICON_NAME),
  target:PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),
  handleClick:PropTypes.func,
}
```

Render
``` jsx=
<New.Notification
  startIcon=" "
  text="前往競標商品獨立結帳頁面"
  endIcon="arrowLineRight" />

<New.Notification
  startIcon="graphicMegaphone"
  text="24h購物 到貨說明更新公告"
  link="http://"
  endIcon="arrowLineRight"
  isSwiper />

```

### Notification.js
![](https://i.imgur.com/ZbEcoZE.png)
``` jsx=
<a
  id={GA}
  href={link}
  target={target}
  className={('c-notification', { [`c-notification--${notificationColor}`]: false })}
  >
  {startIcon ? <IconFonts variant={startIcon} /> : null}
  <div className="c-notification__text">{text}</div>
  {isSwiper ? (
    // loop items
    <div className="c-notification__list">
      <div className="c-notification__text">{text}</div>
    </div>
  ):(<div className="c-notification__text">{text}</div>) }
  {endIcon ? <IconFonts variant={endIcon} /> : null}
</a>
```

Events 觸發事件

``` jsx
const handelBiddingButtonClick = () => void
```

## CheckoutDelivery 配送方式 / 運費




Interface
```typescript
CheckoutDelivery.propTypes = {
  GA: PropTypes.string,
  children:PropTypes.node,
  handleClick:PropTypes.func,
  text: PropTypes.string,
  link:PropTypes.string,
}
```

Render
### CheckoutDelivery.js
![](https://i.imgur.com/flyO5ci.png)
``` jsx=
<New.CheckoutDelivery>
  
  <ListTitle isCheckbox title="配送方式 / 運費" isShowButton={true} buttonText="使用規則" btnType="button" handleClick={handelUseButtonClick}  />
  
  <New.TabList>
    // loop items
    <New.Tab />
  </New.TabList>
  
  <div classname="c-checkoutDelivery__info">
    <ul classname="c-checkoutDelivery__list">
      // loop items
      <map.CheckoutDeliveryItem />
    </ul>
    <div classname="c-checkoutDelivery__notification">
       // loop items
      <New.Notification notificationType="a" notificationColor="grayLighter" startIcon="graphicVender" text={text} link={link} endIcon="arrowLineRight" />
    <div>
  </div>
  
</New.CheckoutDelivery>
    

```
Interface
```typescript
CheckoutDeliveryItem.propTypes = {
  GA: PropTypes.string,
  shippingFee: PropTypes.string,
  shippingcost:PropTypes.string,
  addShippingCost:PropTypes.string,
}
```

Render
### CheckoutDeliveryItem.js
![](https://i.imgur.com/AJgsxCj.png)

``` jsx=
<li classname="c-checkoutDelivery__item">
  <InputLabel>
    <Radio />
    <span classname="c-checkoutDelivery__shippingFee">{shippingFee}</span>
    <span classname="c-checkoutDelivery__shippingcost">{shippingcost}</span>
    <span classname="c-checkoutDelivery__addShippingCost">{addShippingCost}</span>
  </InputLabel>
</li>
```

### TabList.js
![](https://i.imgur.com/ygOypwc.png)
``` jsx=
<div classname="o-tabList">
  // loop items
  <New.Tab />
</div>
```

### tab.js
``` jsx=
<a classname="o-tab">{text}</a>
```

Events 觸發事件

``` jsx
const handelBiddingButtonClick = () => void
```