【发布时间】:2021-05-29 07:46:10
【问题描述】:
我有一个应用程序,我在其中创建了三个 components.js 页面,如下所示。
one.component.js:
import React, { Component } from "react";
import TwoComponent from 'two.component';
import ThreeComponent from 'three.component';
export default class OneComponent extends Component {
render() {
return (
<>
Hi!
<TwoComponent />
<ThreeComponent />
<>
)
}
}
两个.component.js:
import React, { Component } from "react";
export default class TwoComponent extends Component {
render() {
return (
<>
Hi Two Component!
</>
)
}
}
三个.component.js:
import React, { Component } from "react";
export default class ThreeComponent extends Component {
render() {
return (
<>
Hi Three Component!
</>
)
}
}
现在,我只想显示一个组件而隐藏另一个组件。
在 two.component.js 中,我有一个按钮。单击按钮时,我需要显示three.component.js,并且必须隐藏two.component.js。
将以上文件修改如下。
one.component.js:
import React, { Component } from "react";
import TwoComponent from 'two.component';
import ThreeComponent from 'three.component';
export default class OneComponent extends Component {
render() {
return (
<>
Hi!
{
this.state.count === 2 ?
<TwoComponent twoButtonClicked={this.props.triggerButtonClick} />
:
<ThreeComponent />
}
<>
)
}
triggerButtonClick(){
this.setState({ count: 2 });
}
}
两个.component.js:
import React, { Component } from "react";
export default class TwoComponent extends Component {
render() {
return (
<>
<input type="button" onClick={this.twoButtonClicked} />
</>
)
}
}
这里,函数 triggerButtonClick 没有触发。
请帮助我根据其中一个组件中的条件显示组件。提前致谢。
【问题讨论】: