javascript - 将 props 从组件传递到静态方法
问题描述
<Modal onToggleModal={this.onToggleModal}>
<Modal.Header onToggleModal={this.onToggleModal}>
<h1>Modal header</h1>
</Modal.Header>
<Modal.Body>
<ProductDescription data={this.props.data} />
</Modal.Body>
<Modal.Footer>
<h1>Modal footer</h1>
<button type="button" onClick={this.props.onAddToCart}>
Buy now
</button>
</Modal.Footer>
</Modal>
是否可以将onToggleModal
方法Modal
直接传递给Modal.Header
(这是一个返回组件的静态方法),因为我无法this.props
从Modal
静态方法内部访问?
模态组件
export default class Modal extends React.Component<IProps> {
static Header = props => <ModalHeader onToggleModal={props.onToggleModal}>{props.children}</ModalHeader>; }
ModalHeader 组件
const ModalHeader: React.SFC<IProps> = props => {
return (
<div className="modal-header">
<button className="trigger" onClick={props.onToggleModal}>
<i className="fa fa-times close" aria-hidden="true" />
</button>
{props.children}
</div>
);
}
解决方案
推荐阅读
- reactjs - ReactJS语义ui动态生成面包屑菜单
- r - 如何在 R 中导入和读取 ivt 文件
- assembly - NASM:分段错误(核心转储)
- javascript - 我的功能没有正确解析吗?它也不会将firebase写入数据库。没有错误
- r - gganimate 不会显示移动点的轨迹
- java - 如何在 Java 中查找无法存储在 MySQL“utf8”列中的字符
- powershell - 数据在 invoke-webrequest put 方法中作为 null 传递
- java - Gretty / Jetty 无法使用 java 11、Jetty 9.4.14、gretty 加载 WebAppContext
- java - 传递命令行参数来调用批处理作业
- android - 找不到 android.support.design.widget 类