# OrderBook.vue
**路径**:`src/components/OrderBook.vue`
## 功能用途
订单簿组件,展示 Asks(卖单)与 Bids(买单)列表,含价格、份额、累计总量,以及横向进度条表示深度。支持通过 props 接收 CLOB WebSocket 实时数据,无 props 时回退到 mock 数据。
## 核心能力
- Trade Up / Trade Down Tab
- Asks、Bids 列表,带 `HorizontalProgressBar` 深度条
- Last price、Spread 展示
- Live / 连接中 状态展示(均通过 i18n 国际化)
## Props
| 属性 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| asks | `{ price: number; shares: number }[]` | `[]` | 卖单列表(价格单位:¢) |
| bids | `{ price: number; shares: number }[]` | `[]` | 买单列表 |
| lastPrice | `number` | - | 最新成交价(¢) |
| spread | `number` | - | 买卖价差(¢) |
| loading | `boolean` | `false` | 是否连接中 |
| connected | `boolean` | `false` | 是否已连接 WebSocket |
## 使用方式
```vue
```
## 国际化
组件内所有展示文案均使用 `trade.*` 与 `activity.live` 键:
- `trade.orderBook`、`trade.orderBookConnecting`、`trade.orderBookPrice`、`trade.orderBookShares`、`trade.orderBookTotal`
- `trade.orderBookAsks`、`trade.orderBookBids`、`trade.orderBookLast`、`trade.orderBookSpread`
- `activity.live`(实时状态)
## 扩展方式
1. **点击下单**:点击某行价格时,将价格传入 TradeComponent
2. **Trade Up/Down**:可按 Yes/No Token 切换展示不同订单簿