UNPKG

dmx-cli

Version:

scaffold for create component, toolkit, page and so on

79 lines (71 loc) 2.13 kB
import React, { Component } from 'react'; import { connect } from 'react-redux'; import { Menu } from 'antd'; import classNames from 'classnames/bind'; import { actions } from '../../actions'; import styles from './style.mod.less'; import CompLayout from 'comp-layout'; import Header from 'comp-header'; import Footer from 'comp-footer'; import Sidebar from 'comp-sidebar'; import Content from '../../components/content'; import { logoutPath, modifyPwdPath } from 'app/util/config'; const cx = classNames.bind(styles); const { Item } = Menu; class App extends Component { componentDidMount() { this.props.fetchData(); } render() { const { loading, user, sidebar } = this.props; const { entries, openKeys, selectedKeys } = sidebar; const { avatar, name } = user; return ( <CompLayout Header={ <Header avatarUrl={avatar} userName={name} operateMenu={[ modifyPwdPath ? <Item key="modify"> <a href={modifyPwdPath}>修改密码</a> </Item> : null, logoutPath ? <Item key="logout"> <a href={logoutPath}>退出登录</a> </Item> : null, ]} /> } Content={<Content loading={loading} />} Sidebar={ <Sidebar logoUrl="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg" logoStyle={{ margin: '0', padding: '16px', height: '64px', backgroundColor: '#fff', }} dataSource={entries} openKeys={openKeys} selectedKeys={selectedKeys} /> } Footer={<Footer><p>Copyright© 2017-{new Date().getFullYear()}, All Rights Reserved. Power By Damixia</p></Footer>} /> ); } } const mapStateToProps = (state) => { return { ...state }; } const mapDispatchToProps = (dispatch) => { return { fetchData: () => { dispatch(actions.fetchData()); } }; } export default connect(mapStateToProps, mapDispatchToProps)(App);