2016-08-09 7 views
0

나는 내 구성 요소 "메시지"를 가지고 있으며 두 개의 서로 다른 URL을 사용하여이를 호출합니다. 첫 번째 링크를 클릭하면 '메시지/1'이라고 말하면서 메시지 수신함을로드하고 다른 메시지 '5/1'을 보냅니다. 위의 경우와 동일한 구성 요소입니다. 'messages/1'url을 사용하여 페이지를로드하고 'message/5/1'을 가리키는 필드를 클릭하면 헤더의 URL이 변경되지만 실제로는 변경되지 않습니다. 페이지를 다시로드합니다. 동일한 구성 요소를 가지고 있더라도 다른 URL이있을 때마다 구성 요소를 다시로드하고 싶습니다.이 방법은 없습니다.다른 URL을 사용하여 동일한 구성 요소를 다시로드 할 수 있습니까?

+0

에서

당신이 당신의 코드를 공유 할 수 있습니다 RECT 라우터의 재생 방법을 시도하고 사용할 수 있습니까? 소품이 반응을 변경하면 구성 요소를 다시 렌더링합니다. – Deadfish

답변

0

다른 URL에서 동일한 구성 요소를로드 할 수 있으며 모든 것이 올바르게로드되어야합니다. 경로 소품을 변경하고 구성 요소 소품 아래에서 원하는 것과 동일한 구성 요소를 추가하십시오.

render((
    <Router> 
    <Route path="/" component={App}> 
     <Route path="about" component={About} /> 
     <Route path="inbox" component={Message}> 
     <Route path="messages/:id" component={Message} /> 
     </Route> 
    </Route> 
    </Router> 
), document.body) 

편집 : 당신은 https://github.com/reactjs/react-router/blob/v0.13.3/modules/createRouter.js#L435-L437

refresh: function() { 
     Router.dispatch(location.getCurrentPath(), null); 
     }, 
+0

페이지를 다시로드하지 않습니다 .i 네트워크 탭에서 볼 수 있습니다. –

+0

반응에 새로 고침 방법이 있습니다. 사용하려고 시도했습니다. 답변을 편집했습니다. –

+0

어디에서이 메서드를 호출해야합니까? –

관련 문제