2 回答

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超2個(gè)贊
而不是使用useLocation,您可以使用withRouterat PortfolioManagement-
import { withRouter } from 'react-router-dom'
const PortfolioManagement = (props) => {
console.log(props.location && props.location.state)
...rest code...
}
export default withRouter(PortfolioManagement);
我知道它很hacky,但無論如何現(xiàn)在state來自props并且組件將重新渲染
編輯
您可以發(fā)送的位置對(duì)象的用法Link和state位置,如果未通過鏈接調(diào)用組件,則上下文將不存在,考慮在Router裝飾時(shí)通過常規(guī)道具發(fā)送道具(我假設(shè)是連接到 redux 存儲(chǔ)的組件)
<Route path="/portfolios/:id" render={()=> <PortfolioManagement props={...props} />} />

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊
沒有找到反應(yīng)路由器的解決方案,我通過作弊解決了它并讓portfolioManagement直接訪問商店
添加回答
舉報(bào)