diff --git a/src/components/PageHeader/index.js b/src/components/PageHeader/index.js index a36fa7f15e5472bbf0fb3f611845008a8115ce26..993bd57e98d9c380486886140463b386928845c3 100644 --- a/src/components/PageHeader/index.js +++ b/src/components/PageHeader/index.js @@ -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 (