在React-Router的“链接”中传递Props
当React与React-Router一起使用时,你可以使用以下方式将属性传递给新视图 中的修改语法
更新了 React-Router v4 和 v5 中的语法
要在 React-Router v4 和 v5 中传递 props,请使用以下语法:
<Link to={{ pathname: path, query: queryObject, search: searchString }}> ... </Link>
其中:
访问目标组件中的 Props
在目标组件中,您可以访问通过使用以下技术进行链接:
withRouter 高阶组件的过时用法:
const NewView = withRouter(OriginalView);
使用钩子的当前实现:
const NewView = () => { const { testvalue } = useParams(); const { query, search } = useLocation(); return ( <div> {testvalue} {query.backUrl} </div> ); };
示例
考虑以下示例:
App.js:
<Link to={{ pathname: '/ideas/:testvalue', query: { testvalue: 'hello' } }}>Create Idea</Link>
CreateIdeaView.js:
const CreateIdeaView = () => { const { testvalue } = useParams(); console.log(testvalue); // prints 'hello' return ( <div>{testvalue}</div> ); };
在此示例中,单击“创建创意”链接会将值为 hello 的属性 testvalue 传递给 CreateIdeaView 组件。
注意:
以上是如何在 React-Router 的“Link”组件中传递 Props?的详细内容。更多信息请关注PHP中文网其他相关文章!