Command 命令面板
命令面板(⌘K / Ctrl+K)——搜索过滤、键盘选择、Enter 执行。open 受控:可由外部设置,也可用 ⌘K 全局快捷键或 Esc 关闭(关闭时派发 oas-select / 移除 open)。
基础用法
基础用法(⌘K / Ctrl+K 打开)
受控打开
open 属性由外部控制:外部按钮设置 open 打开面板;关闭由 Esc / 点击遮罩 / 选择命令触发(组件移除 open,受控关闭由宿主监听 oas-select 后决定是否重新打开)。
打开时遮罩铺满全屏,因此「关闭」不提供外部按钮,用 Esc / 点击遮罩 / 选择命令关闭。
外部控制 open
分组与空态
分组标题按 group 字段渲染;无匹配时显示「无匹配命令」空态。
分组与空态
API
属性
| 属性 | 说明 | 类型 | 默认值 |
|---|---|---|---|
items | 命令项 JSON | string | [] |
open | 是否打开(受控;选择 / Esc 后自动移除) | boolean | — |
事件
| 事件 | 说明 |
|---|---|
oas-select | 执行某项,detail: { value } |
CommandItem 字段:
| 字段 | 说明 | 类型 |
|---|---|---|
label | 显示文案 | string |
value | 选中值(oas-select detail.value) | string |
keywords | 搜索关键词(可选),参与 label 之外的匹配 | string[] |
group | 分组名(可选),同组项渲染分组标题 | string |
disabled | 禁用该项(Enter/点击不可选,方向键跳过) | boolean |
键盘:↑/↓ 移动高亮(跳过 disabled),Enter 执行并关闭,Esc 关闭,Tab 在搜索框与选项间循环(焦点陷阱);打开时自动聚焦搜索框,关闭后焦点归还来源元素。全局快捷键 ⌘K / Ctrl+K 切换开关。