0

我正在尝试使用 ReactJS 构建 SPA,但在获取 url 参数时遇到问题。您能否向我解释以下两种方法之间的区别。

<Route exact path="/blog/:slug.:id" component={BlogDetail}/>
-------------------------------------------------------
<Route exact path="/blog/:slug.:id">
 <BlogDetail/>
</Route>

使用第一种方法,我可以从BlogDetail Component的 props 中获取 slug 和 id 。但第二个不是。为什么?请帮助我 :D 如果我的英语不好,我很抱歉。

4

1 回答 1

0

Route'scomponent是一个渲染道具。拥有一个渲染道具将保证将props其传递给渲染的组件,这是第一种方法中的情况。然而,这被封装在Route组件中。

然而,第二种方法BlogDetail是一个孩子Route。为了能够使用路由道具,它应该显式传递给子组件。

于 2020-02-22T16:09:31.553 回答