我正在尝试使用ReactJS构建SPA,并且在获取url参数时遇到问题。 您能向我解释以下两种方法之间的区别吗?
<Route exact path="/blog/:slug.:id" component={BlogDetail}/>
-------------------------------------------------------
<Route exact path="/blog/:slug.:id">
<BlogDetail/>
</Route>
使用第一种方法,我可以从 BlogDetail组件中的道具中获取子弹和ID。但是第二个不是。 为什么? 请帮助我:D 对不起,我的英语不好。
答案 0 :(得分:0)
Route
的{{1}}是render prop。拥有渲染道具将保证component
向下传递到渲染组件,第一种方法就是这种情况。但是,它封装在props
组件中。
第二种方法Route
是BlogDetail
的子级。为了能够使用路线道具,应将其显式传递给子组件。