React 组件的 children 数据使用

简介: React 组件的 children 数据使用
  • children 属性表示该组件的子节点,只要组件内部有子节点,props 就有该属性,是自动带上的,不需要开发者添加。
  • children 可以是 普通文本普通标签元素函数JSX
  • 案例一:普通文本
import React from "react";
function Sub ({ children }) {
  return (
    <div>
      <div>子组件</div>
      { children }
    </div>
  )
}
class App extends React.Component {
  render () {
    return (
      <div>
        <Sub>
          这是子组件的 children 内容
        </Sub>
      </div>
    )
  }
}
export default App
  • 案例二:函数
import React from "react";
function Sub ({ children }) {
  // 执行方法
  children()
  return (
    <div>
      <div>子组件</div>
    </div>
  )
}
class App extends React.Component {
  render () {
    return (
      <div>
        <Sub>
          { () => { console.log('这是子组件的 children 内容'); } }
        </Sub>
      </div>
    )
  }
}
export default App
  • 案例三:普通元素标签
import React from "react";
function Sub ({ children }) {
  return (
    <div>
      <div>子组件</div>
      { children }
    </div>
  )
}
class App extends React.Component {
  render () {
    return (
      <div>
        <Sub>
          { <div><p>Children 内容1</p><p>Children 内容2</p></div> }
        </Sub>
      </div>
    )
  }
}
export default App
import React from "react";
function Sub ({ children }) {
  return (
    <div>
      <div>子组件</div>
      { children }
    </div>
  )
}
class App extends React.Component {
  render () {
    return (
      <div>
        <Sub>
          <div>Children 内容1</div>
          <p>Children 内容2</p>
        </Sub>
      </div>
    )
  }
}
export default App
import React from "react";
function Sub ({ children }) {
  return (
    <div>
      <div>子组件</div>
      { children.map(child => child) }
    </div>
  )
}
class App extends React.Component {
  render () {
    return (
      <div>
        <Sub>
          <div>Children 内容1</div>
          <p>Children 内容2</p>
        </Sub>
      </div>
    )
  }
}
export default App
相关文章
|
25天前
|
存储 前端开发 索引
REACT 在组件之间共享状态
REACT 在组件之间共享状态
|
18天前
|
存储 前端开发 JavaScript
React中有效地使用props和state来管理组件的数据和行为
React中有效地使用props和state来管理组件的数据和行为
|
25天前
|
前端开发
react通过上下文深入传递数据
react通过上下文深入传递数据
|
25天前
|
前端开发 索引
解决React报错Encountered two children with the same key
解决React报错Encountered two children with the same key
|
2月前
|
前端开发 JavaScript 开发者
在React中,如何利用生命周期方法管理组件的状态和行为?
【5月更文挑战第29天】在React中,如何利用生命周期方法管理组件的状态和行为?
24 3
|
10天前
|
缓存 前端开发 JavaScript
如何对 React 函数式组件进行优化
如何对 React 函数式组件进行优化
|
2月前
|
前端开发
掌握React中的useContext:访问父组件数据的神奇技巧
掌握React中的useContext:访问父组件数据的神奇技巧
|
2月前
|
前端开发 JavaScript 开发者
掌握React中的useEffect:函数组件中的魔法钩子
掌握React中的useEffect:函数组件中的魔法钩子
|
2月前
|
存储 前端开发 安全
深入理解React中的useState:函数组件状态管理的利器
深入理解React中的useState:函数组件状态管理的利器
|
2月前
|
前端开发 JavaScript
React Hooks:让你轻松掌握函数组件的状态与管理
React Hooks:让你轻松掌握函数组件的状态与管理