2017-01-18 2 views
3

모든 Match 구성 요소를 보유하는 주 구성 요소가 App입니다. 상단 (헤더 등)에 현재 페이지를 표시하고 싶지만 현재 경로 이름을 가져 오는 데 문제가 있습니다. App에서React-router v4 - 현재 페이지 표시

나는이 :

App.contextTypes = { 
    history: React.PropTypes.object, 
}; 

그리고 구성 요소에 현재 경로 이름을 전달 :

<Header currentPathname={this.context.history.location.pathname} /> 

그러나, App 때 위치 변경을 업데이트하지 않는 것 같습니다. 이 말을 듣고 소품으로 전달하려면 어떻게해야합니까?

답변

2

Match 구성 요소 위에 올려 놓는 경우 머리글을 모든 경로에 표시하려고합니다. 이 경우 헤더에 Match을 사용하고 모든 패턴을 일치 시키면 location에서 props에 액세스 할 수 있습니다.

<Match 
    pattern="/" 
    component={props => <Header pathname={props.location.pathname} />} 
/> 
+0

굉장 .. 나는이 간단한 것이라고 생각했다. .. 감사합니다! – Toby

관련 문제