React路由傳參的三種方式 React中路由傳參及接收引數的三種方式 阿新 • • 發佈:2018-12-03 React中路由傳參及接收引數的三種方式 方式 一: 通過params 1.路由表中 <Route path=' /sort/:id ' component={Sort}></Route> 2.Link處 HTML方式 <Link to={ ' /sort/ ' + ' 2 ' } activeClassName='active'>XXXX</Link> JS方式 this.props.router.push( '/sort/'+'2' ) 3.sort頁面 通過 this.props.metch.params.id 就可以接受到傳遞過來的引數(id) 方式 二 : 通過query 前提:必須由其他頁面跳過來,引數才會被傳遞過來 注:不需要配置路由表。路由表中的內容照常:<Route path='/sort' component={Sort}></Route> 1.Link處 HTML方式 <Link to={{ path : ' /sort ' , query : { name : 'sunny' }}}> JS方式 this.props.router.push({ path : '/sort' ,query : { name: ' sunny'} }) 2.sort頁面 this.props.location.query.name 方式 三 : 通過state 同query差不多,只是屬性不一樣,而且state傳的引數是加密的,query傳的引數是公開的,在位址列 1.Link 處 HTML方式: <Link to={{ path : ' /sort ' , state : { name : 'sunny' }}}> JS方式: this.props.router.push({ pathname:'/sort',state:{name : 'sunny' } }) 2.sort頁面 this.props.location.state.name 方式 一 : 通過params 1.路由表中 <Route path=' /sort/:id ' component={Sort}></Route> 2.Link處 HTML方式 <Link to={ ' /sort/ ' + ' 2 ' } activeClassName='active'>XXXX</Link> JS方式 this.props.router.push( '/sort/'+'2' ) 3.sort頁面 通過 this.props.metch.params.id 就可以接受到傳遞過來的引數(id) 方式 二: 通過query 前提:必須由其他頁面跳過來,引數才會被傳遞過來 注:不需要配置路由表。路由表中的內容照常:<Route path='/sort' component={Sort}></Route> 1.Link處 HTML方式 <Link to={{ path : ' /sort ' , query : { name : 'sunny' }}}> JS方式 this.props.router.push({ path : '/sort' ,query : { name: ' sunny'} }) 2.sort頁面 this.props.location.query.name 方式 三: 通過state 同query差不多,只是屬性不一樣,而且state傳的引數是加密的,query傳的引數是公開的,在位址列 1.Link 處 HTML方式: <Link to={{ path : ' /sort ' , state : { name : 'sunny' }}}> JS方式: this.props.router.push({ pathname:'/sort',state:{name : 'sunny' } }) 2.sort頁面 this.props.location.state.name