“props.children”如何在 React 组件上工作?
Posted
技术标签:
【中文标题】“props.children”如何在 React 组件上工作?【英文标题】:How "props.children" works on a React component? 【发布时间】:2019-12-02 03:42:53 【问题描述】:我正在编写 React 实践代码,但我停止了,因为我必须在其他页面之间共享导航栏
我找到了下一个解决方案,它可以工作,但我不知道具体是如何工作的;这是一个课程项目。
function Layout(props)
return(
<React.Fragment>
<Navbar />
props.children
</React.Fragment>
);
我真的不知道 props.children
到底做了什么,以及如果布局组件开始持有其他组件导航栏组件仍然出现
<Layout>
<Switch>
<Route exact path="/badges" component=Badges/>
<Route exact path="/badges/new" component=BadgeNew />
</Switch>
</Layout>
幕后发生了什么?
【问题讨论】:
【参考方案1】:props.children
表示 React 将渲染你放在 Layout
组件之间的任何内容。
例如,如果你在布局组件之间放置一个 div 块,props.children
将是那个 div。
【讨论】:
哇哦,所以基本上它就像 Angular 的您放在Layout
-tag 中的每个 JSX 代码都将放在布局组件的 props
-object 的 children
属性中。
<Layout>
<div>this is a child</div>
<AnotherReactComponentAsLayoutChild/>
</Layout>
【讨论】:
以上是关于“props.children”如何在 React 组件上工作?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 React 的 Context 功能将 HTML5 Canvas 上下文传递给 this.props.children?