[英]The 'this.props.history.push()' is working for normal page but not working for nested components?
我有名為 Addmember.js 的 reactjs 頁面,我可以在其中添加人員。 我有一個下一步按鈕,它將通過以下代碼將我帶到儀表板
this.props.history.push('/dashboard')
但是真正的問題出現了,當我在新頁面中使用添加成員組件時,當我單擊下一步時,它顯示以下錯誤
無法讀取未定義的屬性“推送”
幫助將不勝感激!
嘗試從“react-router-dom”導入withRouter
然后在 withRouter 中傳遞組件
例如。
export default withRouter(Addmember);
問題是因為您的組件在嵌套時找不到歷史道具。 目前 react-router-dom 更新到版本 5,所以你可以使用他們的鈎子。
要解決給定的問題,您應該像import {useHistory} from 'react-router-dom'
一樣導入 useHistory 鈎子
然后像const history = useHistory()
一樣在 AddMember 中使用它。 然后,您可以在需要的地方使用歷史記錄中的所有方法。 我想它會對你有所幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.