react-router v4 參數傳遞


react-router v4 參數傳遞有3中方式,分別是params,query 和 state。

1. params(路徑參數)

parrams的傳遞要在路由配置上添加參數,是路由路徑的一部分,在斜杠后面寫參數,就是路徑參數。

//路由表
<Route path='/user/:id ' component={User}></Route>
//Link方式
<Link to={ pathname:' /user/2 '}>XXXX</Link>   
//js方式
this.props.history.push( { pathname:' /user/2 '})
//接收
this.props.match.params.id

2. search(查詢字符串)

無需修改路由表,直接帶參數即可,需要encode。

//Link方式
<Link to={pathname:' /user',query:{name:'meimei'}}>
//js方式
this.props.history.push({ pathname:' /user',query:{name:'meimei'}})
//接收方式
this.props.location.query.name //meimei

3. state

無需修改路由表,直接傳遞。

//Link方式
<Link to={{ pathname:' /user', state:{value:123}}}> 
//js方式
this.props.history.push({ pathname:' /user', state:{value:123}})
//接收方式
this.props.location.state.value

4. hash或自定義參數

//Link方式
<Link to={{ pathname:' /user',hash:'#hashvalue',abc:'def'}}>
//js方式
this.props.history.push({ pathname:' /user', hash:'#hashvalue',abc:'def'})
//接收方式
this.props.location.hash  //#hashvalue
this.props.location.abc  //def  (自定義參數)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM