У меня есть компонент React, и я хочу переключить класс css при нажатии.
Итак, у меня есть это:
export class myComponent extends React.Component {
constructor() {
super();
this.state = { clicked: false };
this.handleClick = this.handleClick.bind(this);
}
render() {
return (
<div>
<div onClick={this.clicked}><span ref="btn" className="glyphicon"> </span></div>
</div>
);
}
handleClick() {
this.refs.btn.classList.toggle('active');
}
componentDidMount() {
this.refs.btn.addEventListener('click', this.handleClick);
this.setState({
clicked: this.state.clicked = true,
});
}
componentWillUnmount() {
this.refs.btn.removeEventListener('click', this.handleClick);
this.setState({
clicked: this.state.clicked = false,
});
}
}
Эта проблема заключается в том, что ESLint продолжает сообщать мне, что "this.refs" обесценивается.
Что мне делать вместо этого? Как я могу исправить это, чтобы он не использовал устаревший код?