--- name: select-tooltip-components overview: 基于已完成的 Popover 基座派生两个组件:Tooltip(hover 文本提示薄封装)与 Select(基础单选下拉,options prop + 默认插槽双数据源,含 clearable、键盘导航、浮层宽度跟随),并在 App.vue 增补演示。 todos: - id: implement-tooltip content: 用 [skill:antdv-next] 查 Tooltip API 并实现 tooltip.vue 与 index.scss status: completed - id: implement-select content: 用 [skill:antdv-next] 查 Select API 并实现 select.vue、index.scss 及新增 token status: completed - id: integrate-app content: App.vue 接入 Select 与 Tooltip 的导航分类、演示 section 与示例状态 status: completed dependencies: - implement-tooltip - implement-select - id: verify content: 用 [skill:playwright-cli] 验证两组件交互并执行 oxlint 与 oxfmt 检查 status: completed dependencies: - integrate-app --- ## 产品概述 基于已完成的 Popover 浮层基座,新增两个基础组件并接入组件库演示页: - **Select 下拉选择**:基础单选版本,提供与 Input 一致的框体视觉、下拉选项列表、键盘导航、清除与禁用能力,浮层宽度跟随触发器。 - **Tooltip 文字提示**:Popover 的 hover 薄封装,提供纯文本提示与富内容插槽两种用法。 ## 核心功能 **Select 单选下拉** - 基础单选:选中值高亮显示,点击选项选中后自动收起浮层 - 数据源双形态:`options` 数组 prop(`[{ label, value, disabled }]`)渲染标准选项;未传 `options` 时渲染默认插槽自定义内容 - 触发器框体:显示选中项文案或 placeholder,右侧 ChevronDown 图标随开合旋转 - `clearable`:有值且悬停/聚焦时显示清除按钮,点击清空 - `disabled`:整组件禁用,不响应交互 - 键盘导航:上下方向键移动高亮(跳过禁用项)、Enter 确认选中、Esc 关闭浮层 - 浮层宽度跟随触发器宽度,超长选项自动换行,列表超高滚动 **Tooltip 文字提示** - hover 触发显示,移入浮层不关闭,移出延迟关闭 - `content` prop 纯文本提示为主用法,`#content` 插槽承载富内容(插槽优先) - 支持 12 方位、箭头开关、进入/离开延迟、禁用态、受控/非受控 两个组件均沿用现有设计 token(卡片、边框、主色、圆角、字号),保持组件库视觉一致。 ## Tech Stack - 前端框架:Vue 3(`