Сообщение от dmitry.suhotsky
|
Как я думаю. По клику onClick={this.handleClick} вызывается функция, в которой ({{index}}) передается текущий итем.
|
Передается не item, а его index.
Сообщение от dmitry.suhotsky
|
handleClick = (i) => {
const newMass = this.state.mass[i];
newMass.like = this.state.mass[i].like +1 ;
this.setState({
mass: newMass
})
|
У вас в state.mass должен находится массив объектов, а вы после обработки клика записываете в него объект, по которому кликнули.
Попробуйте так:
handleClick = index => {
const list = this.state.mass;
const item = list[index];
item.like += item.click ? -1 : 1;
item.click = !item.click;
list[index] = item;
this.setState({
mass: list
});
}