reactjs – 将道具传递给组件,React Router V4
发布时间:2020-12-15 16:21:30 所属栏目:百科 来源:网络整理
导读:我有一个这个组件树的应用程序: App Header Main Searcher List_of_albums Album 所以,我的想法是在主页面上有一个专辑搜索者,这会在搜索后显示一个专辑列表.为此,我正在组件Main中读取.json文件,然后将props传递给List_of_albums和Album. 到目前为止,一切
我有一个这个组件树的应用程序:
App Header Main Searcher List_of_albums Album 所以,我的想法是在主页面上有一个专辑搜索者,这会在搜索后显示一个专辑列表.为此,我正在组件Main中读取.json文件,然后将props传递给List_of_albums和Album. 到目前为止,一切正常. 现在我想以新的路线中的每个相册的信息进行访问:/ id_of_the_album. 这个buttom本地化在组件Album中,如下所示: let albumLink = `/${this.props.id}` <Link to={albumLink}></Link> 为此,我在组件App中尝试了这个: import { BrowserRouter as Router,Route,Switch } from 'react-router-dom' class App extends Component { constructor(){ super() } render () { return ( <Router> <Fragment> <Header /> <Switch> <Route exact path='/' render={() => { return( <Main /> ) }} /> <Route path='/:id_of_the_album' render={() => { return( <Profile /> ) }} /> </Switch> </Fragment> </Router> ) } } 其中个人资料是显示相册详细信息的新组件. import singlejson from '../data/""""herethe_id_of_the_album"""".json' 但是如何将组件配置文件传递给id_of_the_album? 解决方法
写这样:
<Route path='/:id_of_the_album' render={props => <Profile {...props} /> } /> 现在在Profile组件中,它应该可以通过以下方式获得: this.props.match.params.id_of_the_album (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |