UNPKG

2.08 kBJavaScriptView Raw
1import React from 'react';
2import { Layout, Menu, Icon } from 'antd';
3
4const { SubMenu } = Menu;
5const { Sider } = Layout;
6
7
8export default class SiderView extends React.Component {
9
10
11 $renderItem(db) {
12 let res = [];
13 for(var k in db) {
14 const list = db[k];
15 const items = list.map((item, i) => {
16 return <Menu.Item key="{i}">item.page</Menu.Item>
17 });
18 res.push((
19 <SubMenu key="{k}" title={k}>
20 </SubMenu>
21 ))
22 }
23 return res;
24 }
25
26 render() {
27
28 const menuItems = this.$renderItem(this.props.db);
29
30
31 return (
32 <Sider width={200} style={{ background: '#fff' }}>
33 <Menu
34 mode="inline"
35 defaultSelectedKeys={['1']}
36 defaultOpenKeys={['sub1']}
37 style={{ height: '100%' }}
38 >
39 <SubMenu key="sub1" title={<span><Icon type="user" />subnav 1</span>}>
40 <Menu.Item key="1">option1</Menu.Item>
41 <Menu.Item key="2">option2</Menu.Item>
42 <Menu.Item key="3">option3</Menu.Item>
43 <Menu.Item key="4">option4</Menu.Item>
44 </SubMenu>
45 <SubMenu key="sub2" title={<span><Icon type="laptop" />subnav 2</span>}>
46 <Menu.Item key="5">option5</Menu.Item>
47 <Menu.Item key="6">option6</Menu.Item>
48 <Menu.Item key="7">option7</Menu.Item>
49 <Menu.Item key="8">option8</Menu.Item>
50 </SubMenu>
51 <SubMenu key="sub3" title={<span><Icon type="notification" />subnav 3</span>}>
52 <Menu.Item key="9">option9</Menu.Item>
53 <Menu.Item key="10">option10</Menu.Item>
54 <Menu.Item key="11">option11</Menu.Item>
55 <Menu.Item key="12">option12</Menu.Item>
56 </SubMenu>
57 </Menu>
58 </Sider>
59 )
60 }
61}
\No newline at end of file