Dropdown 下拉菜单
向下弹出的列表。
何时使用#
当页面上的操作命令过多时,用此组件可以收纳操作元素。点击或移入触点,会出现一个下拉菜单。可在列表中进行选择,并执行相应的命令。
API#
属性如下
成员 |
说明 |
类型 |
默认值 |
trigger |
触发下拉的行为 |
"click" or "hover" |
hover |
overlay |
菜单节点 |
React.Element |
无 |
onClick |
点击菜单后的回调 |
function({key,keyPath,item,domEvent}) {} |
无 |
菜单可由 antd.Menu
取得,可设置 onSelect
回调,菜单还包括菜单项 antd.Menu.Item
,分割线 antd.Menu.Divider
。
注意: Menu.Item 必须设置唯一的 key 属性。
代码演示
import { Menu, Dropdown, Button, Icon } from 'antd';
const menu = <Menu>
<Menu.Item>
<a target="_blank" href="http://www.alipay.com/">第一个菜单项</a>
</Menu.Item>
<Menu.Item>
<a target="_blank" href="http://www.taobao.com/">第二个菜单项</a>
</Menu.Item>
<Menu.Item>
<a target="_blank" href="http://www.tmall.com/">第三个菜单项</a>
</Menu.Item>
</Menu>;
ReactDOM.render(
<Dropdown overlay={menu}>
<Button>
某按钮 <Icon type="down" />
</Button>
</Dropdown>
, document.getElementById('components-dropdown-demo-basic'));
import { Menu, Dropdown, Button, Icon } from 'antd';
const menu = <Menu>
<Menu.Item key="0">
<a href="http://www.alipay.com/">第一个菜单项</a>
</Menu.Item>
<Menu.Item key="1">
<a href="http://www.taobao.com/">第二个菜单项</a>
</Menu.Item>
<Menu.Divider/>
<Menu.Item key="3">第三个菜单项</Menu.Item>
</Menu>;
ReactDOM.render(<div>
<Dropdown overlay={menu} trigger={['click']}>
<Button type="primary">
点击触发 <Icon type="down" />
</Button>
</Dropdown>
<Dropdown overlay={menu}>
<Button>
鼠标移入 <Icon type="down" />
</Button>
</Dropdown>
</div>, document.getElementById('components-dropdown-demo-trigger'));
import { Menu, Dropdown, Button, Icon } from 'antd';
const menu = <Menu>
<Menu.Item key="0">
<a target="_blank" href="http://www.alipay.com/">第一个菜单项</a>
</Menu.Item>
<Menu.Item key="1">
<a target="_blank" href="http://www.taobao.com/">第二个菜单项</a>
</Menu.Item>
<Menu.Divider/>
<Menu.Item key="3" disabled>第三个菜单项(不可用)</Menu.Item>
</Menu>;
ReactDOM.render(
<Dropdown overlay={menu}>
<Button>
鼠标移入 <Icon type="down" />
</Button>
</Dropdown>
, document.getElementById('components-dropdown-demo-item'));
import { Menu, Dropdown, Button, Icon } from 'antd';
const onClick = function({key}) {
console.log('点击了菜单' + key);
};
const menu = <Menu onClick={onClick}>
<Menu.Item key="1">第一个菜单项</Menu.Item>
<Menu.Item key="2">第二个菜单项</Menu.Item>
<Menu.Item key="3">第三个菜单项</Menu.Item>
</Menu>;
ReactDOM.render(
<Dropdown overlay={menu}>
<Button>
鼠标移入,点击菜单 <Icon type="down" />
</Button>
</Dropdown>
, document.getElementById('components-dropdown-demo-event'));