gpt4 book ai didi

reactjs - addClass 和 removeClass react

转载 作者:行者123 更新时间:2023-12-01 19:39:02 24 4
gpt4 key购买 nike

我想检查目标元素是否包含类。如果没有添加类,如果是,则删除类。

class Hello extends React.component{
addActiveClass(e){
if(e.target.classList.contains("active")){
//I wanna to add active class to e.target
}else{
//I wanna to remove active class from e.target
//I wanna to do something like e.target.classList.removeClass("atcive");
}
}

render() {
<div className="red green blue" onClick={this.addActiveClass}>Hello World</div>
<div className="red green blue" onClick={this.addActiveClass}>Good Bye World</div>

}
}

我想添加和删除类只针对目标元素而不是其他元素。

最佳答案

您可以利用状态来存储事件 div,然后有条件地向其添加事件类

class Hello extends React.component{
state = {
active: ''
}
addActiveClass(e){
const clicked = e.target.id
if(this.state.active === clicked) {
this.setState({active: ''});
} else {
this.setState({active: clicked})
}
}

render() {
return (
<div>
<div className={`red green blue ${this.state.active === "first"? 'active': ''}`} id="first" onClick={this.addActiveClass}>Hello World</div>
<div className={`red green blue ${this.state.active === "second"? 'active': ''}`} id="second" onClick={this.addActiveClass}>Good Bye World</div>
</div>
)
}
}

关于reactjs - addClass 和 removeClass react ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49014937/

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