1. 程式人生 > >使用react——解決this.props.history.push無法跳轉的問題

使用react——解決this.props.history.push無法跳轉的問題

轉自:

https://blog.csdn.net/yingzizizizizizzz/article/details/78751305

場景:

一個元件中,含有ul展開陣列的元件,在每一行中,都能點選相應的這一行,跳轉到對應的頁面。

也就是說,元件套元件,子元件中this.props.history.push無法工作。提示沒有push這個函式。

因為這時的props中沒有history這個屬性。

解決辦法:

在父元件中,傳遞一個history。

子元件中用history.push   就可以啦

參考資料:

https://segmentfault.com/a/1190000011137828



<NowplayingChild {...this.props} ></NowplayingChild> //將父元件的屬性傳遞給子元件,否則子元件可能沒有屬性props,這裡用的是屬性的簡寫
<li key={item} onClick={this.handleClick.bind(this,item)}>{item}</li>//子元件的寫法
handleClick(id){ //程式設計式導航 console.log(this.props); this.props.history.push("/detail/"+id); }