Но вообще и так вижу, проблема в:
onClick = {onButtonClick(1)}
React вам не Vue, он тупой и действует также как чистый javascript
:
onButtonClick(1) - это вызов функции
onButtonClick с параметром
1 вот прямо сейчас во время рендера, в сам же
onClick назначается
возвращаемое из
onButtonClick значение, в данном случае
undefined.
Надо назначать обработчиком функцию, а не её результат:
onClick = {() => onButtonClick(1)}
Но правильнее делать так:
onClick = {onButtonClick}
А 1 это или 2 получать внутри
onButtonClick из
event.target.