reactjs - 替换 React 组件 onClick
问题描述
我有一个组件,在主屏幕上有一个按钮容器,我不知道如何进行条件渲染。
APP.js
constructor(props) {
super(props);
this.state = {
showComponent: false,
};
}
...
render() {
return (
{
!this.state.showComponent ? (
<div className="button_wrapper">
<>
<button
className="upload_button"
onClick={this.setState({ showComponent: true })}
>
{" "}
{i18next.t("GENERAL.uploadBill")}
</button>
<p className="or_txt"> {i18next.t("GENERAL.or")}</p>
<button className="manual_button">
{" "}
{i18next.t("GENERAL.fillManually")}
</button>
</>
</div>
) : (
<>
<ComponentToShow />
</>
);
}
这个想法是,状态showComponent
最初设置为false
条件语句内的按钮的 onclick,具有当前按钮的容器应替换为新组件。但是,我不确定这个条件是否应该用这个 onClick 事件包装按钮。有没有更有效的方法来做到这一点,而不必为按钮区域创建单独的组件?
解决方案
推荐阅读
- go - 在 Go 中嵌入的惯用方式是什么(与经典 OOP 不同)?
- python - ImportError with SeqIO from Biopython in Spyder
- java - CORDA 无法将状态更改为在流中使用
- docker - 微服务中的服务发现与 docker 中的服务发现
- c# - Select() 性能下降
- python - django 会自动处理自动转义和上下文感知吗?
- java - 在控制器类中模拟的服务层正在执行实际的方法实现
- sql-server - 在 where 子句中使用 T 逗号 (Ț)
- python-3.x - Pandas - 根据 NaN 的数量有条件地删除重复项
- java - What is natural ordering and how to use Comparable