UNPKG

cjd-parkball

Version:

> 中后台业务组件库,中后台就像公园,进入需要买门票(登录),所以以 Parkball(公园球) 命名,公园内必定捕获!作为一个组件库,提供使用方法文档,方便开发者的调用

74 lines (62 loc) 2.15 kB
--- category: 2 title: 只展开当前父级菜单 title_en: Open current submenu only --- zh-CN 点击菜单,收起其他展开的所有菜单,保持菜单聚焦简洁。 en-US Click the menu and you will see that all the other menus gets collapsed to keep the entire menu compact. ````jsx import { Menu, Icon } from 'parkball'; const SubMenu = Menu.SubMenu; class Sider extends React.Component { // submenu keys of first level rootSubmenuKeys = ['sub1', 'sub2', 'sub4']; state = { openKeys: ['sub1'], }; onOpenChange = (openKeys) => { const latestOpenKey = openKeys.find(key => this.state.openKeys.indexOf(key) === -1); if (this.rootSubmenuKeys.indexOf(latestOpenKey) === -1) { this.setState({ openKeys }); } else { this.setState({ openKeys: latestOpenKey ? [latestOpenKey] : [], }); } } render() { return ( <Menu mode="inline" openKeys={this.state.openKeys} onOpenChange={this.onOpenChange} style={{ width: 256 }} > <SubMenu key="sub1" title={<span><Icon type="mail" /><span>Navigation One</span></span>}> <Menu.Item key="1">Option 1</Menu.Item> <Menu.Item key="2">Option 2</Menu.Item> <Menu.Item key="3">Option 3</Menu.Item> <Menu.Item key="4">Option 4</Menu.Item> </SubMenu> <SubMenu key="sub2" title={<span><Icon type="appstore" /><span>Navigation Two</span></span>}> <Menu.Item key="5">Option 5</Menu.Item> <Menu.Item key="6">Option 6</Menu.Item> <SubMenu key="sub3" title="Submenu"> <Menu.Item key="7">Option 7</Menu.Item> <Menu.Item key="8">Option 8</Menu.Item> </SubMenu> </SubMenu> <SubMenu key="sub4" title={<span><Icon type="setting" /><span>Navigation Three</span></span>}> <Menu.Item key="9">Option 9</Menu.Item> <Menu.Item key="10">Option 10</Menu.Item> <Menu.Item key="11">Option 11</Menu.Item> <Menu.Item key="12">Option 12</Menu.Item> </SubMenu> </Menu> ); } } ReactDOM.render(<Sider />, mountNode); ````