# 推送页服务器名称显示优化

**日期**：2026-06-11

## 动机

推送服务器卡片名称过长时被单行截断，且无悬停提示，难以区分相似主机名。

## 变更

- **服务器网格**：名称最多显示 2 行（`line-clamp`）；悬停 `title` 展示「名称 + 域名」
- **卡片 / 列表切换**：工具栏图标切换，偏好存 `localStorage`（`nexus_push_server_view_v1`）
- **列表视图**：表格列展示名称、域名、目标路径、勾选与推送状态
- **点击名称复制**：卡片与列表中点击名称复制到剪贴板（`@click.stop`，不触发勾选）
- **推送进度 / 历史 / 预览**：省略号 + `title` 完整名称；历史列宽 120→200

## 涉及文件

- `frontend/src/components/push/PushServerGrid.vue`
- `frontend/src/composables/push/usePushServerViewMode.ts`（新建）
- `frontend/src/components/push/PushProgressList.vue`
- `frontend/src/components/push/PushHistoryTable.vue`
- `frontend/src/components/push/PushPreviewDialog.vue`
- `frontend/src/composables/push/usePushLogs.ts`

## 验证

```bash
cd frontend && npm run type-check
```

推送页：长名称卡片显示两行；悬停见全名；切换列表视图；点击名称 toast「名称已复制」。

## 迁移

无。仅前端构建部署。
