【发布时间】:2021-04-04 09:54:44
【问题描述】:
我正在尝试添加一个类并将其删除,它已经可用。我正在为每个元素分别做。但它总是指最后一个元素。这样做的正确方法是什么?
有没有简单而优雅的方法来做到这一点?
这是我的组件:
import React from "react";
import "./style.css";
export default class App extends React.Component {
divRef;
constructor(props){
super(props)
this.divRef = React.createRef();
}
toggleView = (e) => {
e.preventDefault();
if(this.divRef.current.classList.contains("active")){
this.divRef.current.classList.remove("active"); //always refer div 2!?
return;
}
this.divRef.current.classList.add("active");
}
render(){
return (
<div class="parent">
<div ref={this.divRef}>
1
<a href="#" onClick={(e) => this.toggleView(e)}>toggle</a>
</div>
<div ref={this.divRef}>2
<a href="#" onClick={(e) => this.toggleView(e)}>toggle</a>
</div>
</div>
);
}
}
【问题讨论】: