zoukankan      html  css  js  c++  java
  • React props.children

    它表示组件所有的子节点。在组件内部使用this.props.children,可以拿到用户在组件里面放置的内容。

    数据类型PropTypes

    • 如果当前没有子节点,它就是undefined
    • 如果只有一个子节点,数据类型是object
    • 如果有多个子节点,数据类型是Array

    可以使用PropTypes进行类型检测

    使用 PropTypes.element ,可以指定仅将单一子元素传递给组件,作为子节点。

    MyComponent.propTypes = {
      children: PropTypes.element.isRequired
    };

    不确定 props.children 会被传入一个还是多个子节点时,可以使用 PropTypes.node 类型,代表任何可被渲染的元素(包括数字、字符串、元素或数组)。

    MyComponent.propTypes = {
      children: PropTypes.node
    };

    React.Children

    React 提供了工具方法 React.Children 来处理 this.props.children。

    1. React.Children.map

    object React.Children.map(object children, function fn)
    遍历 props.children ,在每一个子节点上调用 fn 函数。

    2. React.Children.forEach 

    React.Children.forEach(object children, function fn)
    类似于 React.Children.map(),但是不返回对象。

    3. React.Children.count

    number React.Children.count(object children)
    返回 children 当中的组件总数。

    4. React.Children.only

    object React.Children.only(object children)
    返回 children 中仅有的子节点。如果在 props.children 传入多个子节点,将会抛出异常。

    原文链接:https://blog.csdn.net/u012372720/java/article/details/94000150

  • 相关阅读:
    PAT-1020 Tree Traversals
    PAT- 1014 Waiting in Line
    Python稀疏矩阵运算
    阿里云Hadoop集群DataNode连接不上NameNode
    运行python “没有那个文件或目录3” 或 “/usr/local/bin/python3^M: bad interpreter: 没有那个文件或目录” 错误
    #!/usr/bin/python3 和 #!/usr/bin/env python3的区别
    VBoxManage安装
    Redhat终端中文乱码解决
    Redhat更换yum源
    Redhat乱码
  • 原文地址:https://www.cnblogs.com/xiaofenguo/p/13220812.html
Copyright © 2011-2022 走看看