import React from ‘react‘; import { Link }from ‘react-router-dom‘; import { Breadcrumb } from ‘antd‘; //具体导航的名称
const breadcrumbNameMap = { ‘/user‘:‘用户管理‘,‘/user/user_info‘:‘用户信息‘,‘/user/user_info/user_detail‘:‘用户详情‘,‘/user/user_pool‘:‘用户池‘,‘/user/user_pool/user_detail‘:‘用户详情‘,‘/user/my_user‘:‘我的用户‘,‘/user/my_user/user_detail‘:‘用户详情‘,} export default class NewBreadcrumb extends React.Component {
constructor(props) { super(props); this.state={ pathSnippets: null,extraBreadcrumbItems: null,} } getPath = () => { //对路径进行切分,存放到this.state.pathSnippets中 this.state.pathSnippets = this.props.pathname.split(‘/‘).filter(i => i); // let arr=this.state.pathSnippets; // let pathname=this.context.router.history.location.pathname; //将切分的路径读出来,形成面包屑,存放到this.state.extraBreadcrumbItems this.state.extraBreadcrumbItems = this.state.pathSnippets.map((_,index) => { let url = `/${this.state.pathSnippets.slice(0,index + 1).join(‘/‘)}`; return ( <Breadcrumb.Item key={url}> <Link to={url}> {breadcrumbNameMap[url]} </Link> </Breadcrumb.Item> ); }); } componentwillMount() { this.getPath(); } render() { return <Breadcrumb>{this.state.extraBreadcrumbItems}</Breadcrumb>; } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。