https://ko.reactjs.org/docs/render-props.html

https://www.robinwieruch.de/react-render-props-pattern/

class Amount extends Component {
  ...

  render() {
    return (
      <div>
        <span>US Dollar: {this.state.amount} </span>

        <button type="button" onClick={this.onIncrement}>
          +
        </button>
        <button type="button" onClick={this.onDecrement}>
          -
        </button>

        <Euro amount={this.state.amount} />
        <Pound amount={this.state.amount} />
      </div>
    );
  }
}
const App = () => (
  <div>
    <Amount />

    <Euro amount={amount} />
    <Pound amount={amount} />
  </div>
);
const App = () => (
  <Amount>
    <Pound amount={amount} />
    <Euro amount={amount} />
  </Amount>
);
{this.props.children && this.props.children.map((option) => {
  const childrenWithProps = React.Children.map(option, child => React.cloneElement(child, { handleOption: this.handleOption }));
  return (
      childrenWithProps
  );
})}