React.Children
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了React.Children相关的知识,希望对你有一定的参考价值。
一直分不清React.Children与this.props.children是什么关系。其实很简单,this.props.children是子组件的集合,相当于把子组件当做组件的属性传入。
this.props.children有三种情况:
1.没有子组件时,数据类型为undefined
2.只有一个子组件时,数据类型为object
3.有多个子组件时,数据类型为数组
React.Children是React提供用来处理this.props.children的API,不用考虑this.props.children的数据类型,React.Children有map、forEach、count等方法
渲染组件:
ReactDOM.render(
<APP>
<div data={1}></div>
<div data={2}></div>
<div data={3}></div>
</APP>,
document.getElementById(‘root‘)
);
组件内:
export default class APP extends Component {
constructor(props){
super(props);
}
render(){
return (
<ul>
{React.Children.map(this.props.children,(child) =>{
return (
<li>序号:{child.props.data}</li>
)
})}
</ul>
)
}
}
以上是关于React.Children的主要内容,如果未能解决你的问题,请参考以下文章
React.Children.only 预计在使用 Ref 时会收到单个 React 元素子错误