UNPKG

1.28 kBJavaScriptView Raw
1import React from 'react';
2import { Layout, Menu, Icon } from 'antd';
3
4const { SubMenu } = Menu;
5const { Sider } = Layout;
6
7import PubSub from 'pubsub-js';
8
9
10export default class SiderView extends React.Component {
11
12 constructor(props) {
13 super(props);
14 }
15
16
17 $renderItem(db) {
18 let res = [];
19 for(var k in db) {
20 const list = db[k];
21 const items = list.map((item, i) => {
22 return <Menu.Item key={item.page}>{item.page}</Menu.Item>
23 });
24 res.push((
25 <SubMenu key={k} title={k}>
26 {items}
27 </SubMenu>
28 ))
29 }
30 return res;
31 }
32
33 handleMenuClick({item, key, keyPath}) {
34 console.log(item, key);
35
36 PubSub.publish('SET_PAGE', key);
37
38 }
39
40 render() {
41
42 const menuItems = this.$renderItem(this.props.db);
43
44
45 return (
46 <Menu
47 mode="inline"
48 defaultSelectedKeys={['0']}
49 defaultOpenKeys={['Comp']}
50 style={{ height: '100%' }}
51 onClick={this.handleMenuClick.bind(this)}
52 >
53 {11}
54
55
56 </Menu>
57 )
58 }
59}
\No newline at end of file