gpt4 book ai didi

javascript - 解除绑定(bind)点击react

转载 作者:行者123 更新时间:2023-11-28 14:14:37 25 4
gpt4 key购买 nike

我有一个问题。如何解除react中元素的点击绑定(bind)?我有按钮,当我点击它时,它会增加分数+1,点击后我想删除它。我怎样才能做到这一点?

请帮帮我!

class Toggle extends React.Component {
constructor(props) {
super(props);
this.state = {
result: 2,
score: 0
};

this.getRes = this.getRes.bind(this);
}




getRes() {
if (this.state.result == 2) {
this.setState({score: this.state.score+1})

this.getRes.unbind(this);

}
}

render() {
return (
<div>
<div style={{paddingTop: 10}}>
<p>
<button>1</button>
<button onClick={this.getRes}>{this.state.result}</button>
</p>

<p>
<button>1</button>
<button onClick={this.getRes}>{this.state.result}</button>
</p>


<p>{this.state.score}</p>

</div>
</div>
);
}
}

ReactDOM.render(
<Toggle />,
document.getElementById('root')
);

最佳答案

在 React 中,您可以通过使用 render() 描述新状态来更改 UI,而不是通过手动绑定(bind)或取消绑定(bind)或更改内容。

如果您希望处理程序通过绑定(bind),请将您的 render() 方法更改为仅将 this.getRes 传递给 onClick:

onClick={... ? this.getRes : null}

关于javascript - 解除绑定(bind)点击react,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58015842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com