在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ react如何在兩個(gè)頁(yè)面間傳遞參數(shù)(componentWillReceivePr

react如何在兩個(gè)頁(yè)面間傳遞參數(shù)(componentWillReceiveProps)

環(huán)境:dva.js(就是react)
我兩個(gè)頁(yè)面是不同地址的
圖片描述

有一個(gè)搜索欄,
里面有一些tag
http://localhost:8000/share 和
http://localhost:8000/searchResource
這兩個(gè)頁(yè)面的tag信息不能共享。

等于說(shuō)我在主頁(yè)面http://localhost:8000/share搜索了東西之后跳轉(zhuǎn)到另一頁(yè)http://localhost:8000/searchResource,組件重新加載tag里面的信息都消失了。

然后我按后退鍵回到http://localhost:8000/share時(shí),系統(tǒng)又會(huì)把原來(lái)老的share頁(yè)面記憶的tag信息調(diào)出來(lái)。

公司大佬跟我說(shuō)用componentWillReceiveProps,我用了,沒(méi)用。我覺(jué)得那個(gè)大佬是不是沒(méi)注意我地址欄變了。
我找到了這篇文章:
http://blog.csdn.net/zrcj0706...

我的疑惑是componentWillReceiveProps是不是針對(duì)單頁(yè)面的???但是這個(gè)文章里說(shuō)了父子頁(yè)面。

componentWillReceiveProps可以實(shí)現(xiàn)這種父子頁(yè)面的值的傳遞

render((
  <Router history={hashHistory}>
    <Route path="/" component={App}>
      {/* make them children of `App` */}
      <Route path="/repos" component={Repos}/>
      <Route path="/about" component={About}/>
    </Route>
  </Router>
), document.getElementById('app'))

核心問(wèn)題:這種父子頁(yè)面是不是跟我的
http://localhost:8000/share 和
http://localhost:8000/searchResource
這種頁(yè)面不是一回事?
但是他這個(gè)父子頁(yè)面的地址欄也變了呀。和我這個(gè)地址欄變了是不是不是一回事?

回答
編輯回答
好難瘦

可以參考react-router傳參

2017年3月21日 00:06
編輯回答
有你在

路由變化傳參有三種方式:
1.放在url里,拼成querystring,第一個(gè)頁(yè)面拼,第二個(gè)頁(yè)面取
2.放到localstorage,sessionstorage等本地存儲(chǔ)里
3.如果路由跳轉(zhuǎn)是用react-router-dom實(shí)現(xiàn),那么可以在跳轉(zhuǎn)的時(shí)候放到state里

<Link to={{pathname: '/searchResource', state: {你的參數(shù)對(duì)象}}}/> xxx </Link> 
2017年12月28日 12:22
編輯回答
浪婳

首先,react里沒(méi)有頁(yè)面這個(gè)概念。只有組件。你說(shuō)成頁(yè)面,人家還以為頁(yè)面刷新了一次呢。

2017年10月7日 09:54