今天碰到一個(gè)問題 路由組件之間的傳值
正常的組件 父傳子 子傳父 都很簡單
<Nav UserInfo={this.state.userInfo} />
//直接在nav 組件種用 this.props.userInfo 就可以獲取到父組件的值
但是在route 組件 這樣是不行的
<Route exact path="/" component={Banner} UserInfo={this.state.userInfo} />
//banner 組件內(nèi)是拿不到這個(gè)this.props.userInfo, 報(bào)錯(cuò)
才發(fā)現(xiàn)在Banner 組件上面還包著一層route 組件
然后找到了這樣的解決方案
<Route exact path="/space/:id" render={(props)=><Space {...props} getUserInfo={this.getUserInfo}/>} />
//寫一個(gè)render的方法將組件暴露 把狀態(tài)放在組件本身,然后就可以調(diào)用了。
事實(shí)是可以用的染服,但我是個(gè)小弱雞,并不知道是不是一個(gè)好的辦法飘弧,歡迎大神指點(diǎn)识藤。