2017-01-31 4 views
0

Wenn der Inhalt zum ersten Mal korrekt angezeigt wird, klicken Sie auf einen Link wird die URL ändern, aber die Ansicht immer noch die gleiche. Ich musste zweimal klicken, damit sich die Ansicht änderte.react-router url ändern, musste aber doppelt auf "Link" Komponente für Ui zu ändern

Mein Router

render(
<Provider store={store}> 
    <Router history={browserHistory}> 
     <Route path="/:courseName/**" component={components.app}> 
      <IndexRoute components={{ 
       sidebar: containers.sidebar, 
       chapter: containers.chapter 
      }} /> 
     </Route> 
    </Router> 
</Provider>, 
document.getElementById('container') 
); 

Mein Versand innerhalb der Kapitel Komponente

componentWillUpdate() { 
    const { dispatch, params: { courseName, splat } } = this.props; 
    dispatch(actions.fetchChapter(courseName, splat)); 
+1

Das ist es, weil Sie mit den "alten" Requisiten arbeiten. Versuchen Sie, die neuesten mit so etwas zu verwenden. 'ComponentWillUpdate (Requisiten) { const {Versand, Parameter: {Kursname, Splat}} = Requisiten; Versand (actions.fetchChapter (CourseName, splat)); ' – dlopez

+0

Vielen Dank @dlopez! – sandaemc

Antwort

0

Wie @dlopez wies darauf hin, hatte ich die eingehenden Requisiten zu verwenden.

componentWillReceiveProps(nextProps) { 
    console.log("In erhe"); 
    const { dispatch, params: { courseName, splat } } = nextProps; 
    dispatch(actions.fetchChapter(courseName, splat)); 
} 
Verwandte Themen