react antd layout sider

Posted Nyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react antd layout sider相关的知识,希望对你有一定的参考价值。

import React from ‘react‘;
import {Link, withRouter} from ‘react-router-dom‘;
import {Layout, Menu, Icon} from ‘antd‘;
const {SubMenu} = Menu;
const {Sider} = Layout;

class SideBar extends React.Component {
    constructor(props) {
        super(props);
        this.state =  {
            collapsed: false,
            currentPath : this.props.history.location || ‘/user‘
        }
    }

    toggleCollapsed() {
        this.setState({
            collapsed: !this.state.collapsed
        });
    }
    render() {
        return (
            <Sider
                width={250}
                collapsible
                onCollapse={() => this.toggleCollapsed()}
                collapsed={this.state.collapsed}
                style={{background: ‘#fff‘}}>
                <Menu
                    mode="inline"
                    defaultSelectedKeys={[‘0‘]}
                    //defaultOpenKeys={[‘sub1‘]}
                    style={{height: ‘100%‘}}>

                    <Menu.Item key="0">
                        <Link to="/">
                            <Icon type="home" />首页
                        </Link>
                    </Menu.Item>

                    <SubMenu key="sub1" title={<span><Icon type="laptop"/>主导航</span>}>
                        <Menu.Item key="1">
                            <Link to="/antForm">多组表单form处理</Link>
                        </Menu.Item>
                        <Menu.Item key="2">
                            <Link to="/antTable">表格table</Link>
                        </Menu.Item>
                        <Menu.Item key="3">
                            <Link to="/login">首页</Link>
                        </Menu.Item>
                    </SubMenu>
                    <SubMenu key="sub2" title={<span><Icon type="save"/>商品</span>}>
                        <Menu.Item key="6">
                            <Link to="/product">商品管理</Link>
                        </Menu.Item>
                        <Menu.Item key="10">
                            <Link to="/product/add">商品添加</Link>
                        </Menu.Item>
                        <Menu.Item key="7">
                            <Link to="/product.category">品类管理</Link>
                        </Menu.Item>
                    </SubMenu>
                    <SubMenu key="sub3" title={<span><Icon type="shopping-cart"/>订单</span>}>
                        <Menu.Item key="8">
                            <Link to="/order">订单管理</Link>
                        </Menu.Item>
                    </SubMenu>
                    <SubMenu key="sub4" title={<span><Icon type="user"/>用户</span>}>
                        <Menu.Item key="9">
                            <Link to="/user">用户管理</Link>
                        </Menu.Item>
                    </SubMenu>

                </Menu>
            </Sider>
        );
    };
}
export default withRouter(SideBar);

 

以上是关于react antd layout sider的主要内容,如果未能解决你的问题,请参考以下文章

AntD中布局sider宽度设置

如何自定义 Ant.design 样式

十九React UI框架Antd(Ant Design)的使用——及react Antd的使用 button组件 Icon组件 Layout组件 DatePicker日期组件

react-router、react-redux、antd(Layout)

React实现新闻网站--使用动态路由获取不同列表内容

React 16.3, Antd 4.2, 侧边栏的 Icon 由后端返回,Icon显示问题