有时候,我们在react组件的render函数中使用React组件,如下所示:
render() {
return(
<div>
...
<MYReactComponent/>
...
</div>
)
}
有时候,我可以将react组件用作另一个组件的子组件,例如:
<ParentReactComp>
...
<MYReactComponent/>
...
</ParentReactComp>
一种方法比另一种方法有什么优势?
答案 0 :(得分:4)
直接在reander函数中添加组件时,您会在添加组件的确切位置上获得该组件。
但是当您使用它时,
<ParentReactComp>
...
<MYReactComponent/>
...
</ParentReactComp>
在您的ParentReactComp
组件中,您需要使用
{this.props.children}
答案 1 :(得分:2)
在render中声明单个组件可以让您使用props调用简单的react组件。
<div>
...
<MYReactComponent/>
...
</div>
您希望在需要时将组件包装在“父组件”中
<ParentReactComp>
...
<MYReactComponent/>
...
</ParentReactComp>
1)包装html
2)将一些数据传递到MyReactComponent
进行合成,或将其用作容器。
3)您可能希望使用MyReactComponent
在ParentReactComp
中获得{this.prop.children}
。
最后两个都是反应组件,您可以根据需要将一个组件封装到另一个组件中。
希望有帮助!