javascript - 如何使用 React 子元素创建 <Modal.Title> 等元素

标签 javascript reactjs react-native ecmascript-6

如何使用 React 组件编写这样的代码:

<Modal>
<Modal.Title>test title <Modal.Title>
<Modal.Body>

...body
</Modal.Body>
</Modal>

最佳答案

将子组件(TitleBody)设置为主组件(Modal)的静态成员:

class Modal extends React.Component {
  static Title = ({ children }) => <h2>{children}</h2>;
  static Body = ({ children }) => <section>{children}</section>;

  render() {
    return (
      <div>
        {this.props.children}
      </div>
    );
  }
}

ReactDOM.render(
  (<Modal>
    <Modal.Title>test title </Modal.Title>
      <Modal.Body>

        ...body
    </Modal.Body>
  </Modal>),
  document.getElementById('demo')
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

<div id="demo"></div>

关于javascript - 如何使用 React 子元素创建 <Modal.Title> 等元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53967976/

相关文章:

javascript - 如何让 AngularJS 更新输入值?

javascript - 使用 JavaScript 访问 CSS 动画播放状态

javascript - 我们可以将 setState 作为 props 从一个组件传递到另一个组件,并在 React 中从子组件更改父状态吗?

reactjs - React-Native错误: cannot find module 'metro-react-native-babel-preset'

javascript - 购物车计数未正确更新

SVG 在 React Native 项目中的使用

android - react native : App crashes in simulator only when debugging is on and only on Android

javascript - 设置列以在 EasyUI 数据网格上显示为排序

react-native - 获取 ReferenceError : fetch is not defined when running react native tests in mocha

javascript - 如何在包装器 div 的鼠标悬停时更改图像