在 react-router 中传递 props 时,是不是将 ...rest 中的属性传递给 routeProps?
Posted
技术标签:
【中文标题】在 react-router 中传递 props 时,是不是将 ...rest 中的属性传递给 routeProps?【英文标题】:Are the properties in ...rest being passed down to routeProps when passing props in react-router?在 react-router 中传递 props 时,是否将 ...rest 中的属性传递给 routeProps? 【发布时间】:2020-05-31 00:29:00 【问题描述】:我正在浏览这个传递我们自己在 React Router 网站上的 props 的例子:
https://reacttraining.com/react-router/core/api/Route/render-func
function FadingRoute( component: Component, ...rest )
return (
<Route
...rest
render=routeProps => (
<FadeIn>
<Component ...routeProps />
</FadeIn>
)
/>
);
问:为了将 ...rest 对象传递给 routeProps,是否要传递 ...rest?
谢谢。 A.
【问题讨论】:
【参考方案1】:很遗憾,rest
不会传递给 routeProps
,因此您需要在传递给 Component
时自行合并它们:
<Component ...routeProps ...rest />
:)
【讨论】:
您能否进一步解释一下。rest
是用来做一件事的,就是将props向下传递给Route
组件,这样就可以判断你是否可以访问某个路由。如果在您的情况下您需要将它们传递给Component
,那么就这样做,就像我之前展示的那样,你会没事的:)以上是关于在 react-router 中传递 props 时,是不是将 ...rest 中的属性传递给 routeProps?的主要内容,如果未能解决你的问题,请参考以下文章
使用 react-router v4 将 props 传递给子组件
javascript 使用react-router将Props传递给组件
通过 React-Router v4 <Link /> 传递值