私のアプリケーションは、ヘッダ、フッタ、ルーティングされた子コンポーネントをレンダリングするコンポーネントにラップされています。ReactJS - ネストされたルートに応じて親のコンポーネントを変更する
<Header />
のコンポーネントを/ adminにある</HeaderAdmin/>
に置き換えようとしています。そのために
ルート
<Route path='/' component={SiteWrapper} >
<IndexRoute component={Home} />
<Route path="admin" component={Admin}>
<Route path="dashboard" component={Dashboard}/>
</Route>
</Route>
SiteWrapperコンプ
export default class SiteWrapper extends React.Component {
render() {
return (
<div>
<Header/> // Want to replace with <AdminHeader /> if on /admin
<div className="container">
{this.props.children.props.route.header ? <PageHeader header={this.props.children.props.route.header} /> : null}
{this.props.children}
</div>
<Footer/>
</div>
)
}
}
を見つけるために
this.props.location.pathname
を使用することができます – vikrant