基础组件
Dropdown
Alune 月光主题下的菜单,直接保留 Ant Design 原有属性、类型与行为。
使用方式
菜单由宿主传入状态和回调,适合在不同应用和文档中复用。先完成快速开始中的 Provider 与样式配置。
import { Dropdown } from '@alune/ui'; 运行示例
运行与复制源码来自同一 TSX 文件。浮层、状态和主题独立于文档;所有回调只更新本地模拟数据。
正在加载示例…
查看运行源码
import { Dropdown, Button } from '@alune/ui';
export default function Example() {
return (
<div className="example example--narrow">
<h2 className="example-title">点击打开操作菜单</h2>
<div className="example-row">
<Dropdown
trigger={['click']}
menu={{
items: [
{ key: 'copy', label: '复制' },
{ key: 'open', label: '打开' },
{ key: 'disabled', label: '不可用', disabled: true },
],
}}
>
<Button>打开菜单</Button>
</Dropdown>
</div>
</div>
);
}
API
直接转导出 Ant Design 的 Dropdown,保留原始 Props、泛型、复合成员与回调语义。下表列出常用属性;类型取自当前安装版本,默认值沿用 Ant Design 6。
AluneUIProvider 统一主题与减少动效;宿主维护受控状态、校验和业务回调。
Dropdown
DropdownProps
| 属性 / 方法 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
menu | (MenuProps & { activeKey?: MenuProps["activeKey"]; }) | — | 否 | MenuProps,含 items 和点击回调。 |
trigger | ("contextMenu" | "hover" | "click")[] | [hover] | 否 | 触发方式数组,操作菜单推荐 click。 |
placement | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "topCenter" | "bottomCenter" | bottomLeft | 否 | 菜单位置。 |
disabled | boolean | false | 否 | 禁用触发。 |
open | boolean | — | 否 | 受控开启状态。 |
onOpenChange | ((open: boolean, info: { source: "trigger" | "menu"; }) => void) | — | 否 | 接收 open 及触发来源 info。 |
交互与使用限制
为每个操作提供可访问名称,为输入关联 label;使用语义化组件和清晰焦点。不要只靠颜色传达状态,禁用与等待时避免重复执行。
宿主负责状态、业务操作、错误处理与真实内容。组件不读取业务 store、路由或 Electron。示例中的反馈和等待均为本地模拟。
键盘、焦点、风险确认与通知策略的完整约定见交互规范。