如何在页面渲染的时候判断this.props.children是否存在?

#1

如何在页面渲染的时候判断this.props.children是否存在?

#2

生命周期里面可以监听到componentDidMount

#3

if (this.props.children) {…} 就可以。

或者在JSX里面 {this.props.children && <…>}

#4

this.props.children 的值有三种可能:

  1. 如果当前组件没有子节点,它就是 undefined;
  2. 如果有一个子节点,数据类型是 object;
  3. 如果有多个子节点,数据类型就是 array
React 提供一个工具方法 React.Children 来处理 this.props.children 。我们可以用 React.Children.map 来遍历子节点,而不用担心 this.props.children 的数据类型是 undefined 还是 object。