我还是 React 的新手。我正在尝试在我的类组件下的另一个方法中定义的条件下呈现 jsx,如下所示:
isWinner = () => {
let userVotesCount1 = this.state.user1.userVotesCount;
let userVotesCount2 = this.state.user2.userVotesCount;
if (userVotesCount1 > userVotesCount2) {
userVotesCount1++;
this.setState({ user1: { userVotesCount: userVotesCount1 } });
return (
<h3>Winner</h3>
);
}
userVotesCount2++;
this.setState({ user2: { userVotesCount: userVotesCount2 } });
return (
<h3>Loser</h3>
);}
我在渲染方法中调用这个方法
<Dialog
open={open}
onRequestClose={this.onClose}
>
<div>
<isWinner />
</div>
</Dialog>
已经尝试使用替换<isWinner />
,{() => this.isWinner()}
但我从未从该方法中获得回报。我做错了什么?因为我在这里处理状态,所以我不知道如何使用外部函数来做到这一点。由于某种原因,这个函数永远不会被调用。请帮忙!