|
|
|
@ -26,6 +26,18 @@ export default class PageHeader extends PureComponent { |
|
|
|
location: PropTypes.object, |
|
|
|
breadcrumbNameMap: PropTypes.object, |
|
|
|
}; |
|
|
|
|
|
|
|
state = { |
|
|
|
breadcrumb: null, |
|
|
|
}; |
|
|
|
|
|
|
|
componentDidMount() { |
|
|
|
this.getBreadcrumbDom(); |
|
|
|
} |
|
|
|
componentWillReceiveProps() { |
|
|
|
this.getBreadcrumbDom(); |
|
|
|
} |
|
|
|
|
|
|
|
onChange = key => { |
|
|
|
if (this.props.onTabChange) { |
|
|
|
this.props.onTabChange(key); |
|
|
|
@ -39,6 +51,12 @@ export default class PageHeader extends PureComponent { |
|
|
|
breadcrumbNameMap: this.props.breadcrumbNameMap || this.context.breadcrumbNameMap, |
|
|
|
}; |
|
|
|
}; |
|
|
|
getBreadcrumbDom = () => { |
|
|
|
const breadcrumb = this.conversionBreadcrumbList(); |
|
|
|
this.setState({ |
|
|
|
breadcrumb, |
|
|
|
}); |
|
|
|
}; |
|
|
|
// Generated according to props
|
|
|
|
conversionFromProps = () => { |
|
|
|
const { breadcrumbList, breadcrumbSeparator, linkElement = 'a' } = this.props; |
|
|
|
@ -158,8 +176,8 @@ export default class PageHeader extends PureComponent { |
|
|
|
tabDefaultActiveKey, |
|
|
|
tabBarExtraContent, |
|
|
|
} = this.props; |
|
|
|
|
|
|
|
const clsString = classNames(styles.pageHeader, className); |
|
|
|
const breadcrumb = this.conversionBreadcrumbList(); |
|
|
|
const activeKeyProps = {}; |
|
|
|
if (tabDefaultActiveKey !== undefined) { |
|
|
|
activeKeyProps.defaultActiveKey = tabDefaultActiveKey; |
|
|
|
@ -170,7 +188,7 @@ export default class PageHeader extends PureComponent { |
|
|
|
|
|
|
|
return ( |
|
|
|
<div className={clsString}> |
|
|
|
{breadcrumb} |
|
|
|
{this.state.breadcrumb} |
|
|
|
<div className={styles.detail}> |
|
|
|
{logo && <div className={styles.logo}>{logo}</div>} |
|
|
|
<div className={styles.main}> |
|
|
|
|