@fuckingawesomenigga

Как получить элемент по которому кликнули?

class Item extends Component {
    render() {
		function selectItem(e) {
            alert('test');
        }
        return (
            <div className={s.item} onClick={selectItem}>
            	<div className={s.pic}>pic</div>
            	<div className={s.product}>Name</div>
            	<div className={s.lowprice}>9999RUB</div>
            	<div className={s.sale}>54%</div>
            </div>
        );
    }
}


таких эл-ов множество, как получить именно тот, по которому кликнули, чтоб добавить класс только ему?
  • Вопрос задан
  • 397 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
class Item extends Component {
    state = {selected: false}

    toggleSelected = () => { this.setState({selected: !this.state.selected}) }

    render() {
        return (
            <div className={`${s.item} ${this.state.selected ? 'selected' : ''}`} onClick={this.toggleSelected}>
            	<div className={s.pic}>pic</div>
            	<div className={s.product}>Name</div>
            	<div className={s.lowprice}>9999RUB</div>
            	<div className={s.sale}>54%</div>
            </div>
        );
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы