Если вы используете handleChange (который я предлагаю), вы можете изменить его следующим образом:
handleChange = value => {
this.setState({ stepPattern: value });
console.log(value);
}
Теперь, все, что вам нужно, это ваш Dropdown.Item для вызова функции handleChange , Попробуйте следующее:
render() {
return (
<SplitButton className="dropdownItem" variant='secondary' title='step pattern' >
<Dropdown.Item onClick={() => { this.handleChange(1); }} eventKey="1" value='step' ><img className="patterns" alt="a stepped gradient" src={step}></img></Dropdown.Item>
<Dropdown.Divider />
<Dropdown.Item onClick={() => { this.handleChange(2); }} eventKey="2" value='wave' ><img className="patterns" alt="a wavy gradient" src={wave}></img></Dropdown.Item>
<Dropdown.Divider />
<Dropdown.Item onClick={() => { this.handleChange(3); }} eventKey="3" value='curve' ><img className="patterns" alt="an upward sloped gradient" src={curve}></img></Dropdown.Item>
</SplitButton >
);
}
Теперь каждая из кнопок вызывает функцию с предопределенным значением, которое можно вывести в константу.