Обратный вызов, который вы назначаете для onChange={() => this.handleChange.bind(this)}
, фактически ничего не делает каждый раз, когда вы изменяете значение в своем выборе. Единственное, что он делает, это привязывает this
к handleChange. Это не будет вызывать функцию.
Достаточно передать результат связывания, который уже является функцией.
onChange={this.handleChange.bind(this)}
Подумайте об этом
function sum(a,b){
return a+b;
}
const sumWithNoArgs = () => sum.bind(null, 1,2);
Если мы теперь вызовем sumWithNoArgs (), мы получим новую функцию вместо суммы. Это именно то, что делает select, он вызывает функцию, которую вы передаете.
Вы должны сделать
const sumWithNoArgs = () => sum.bind(null, 1,2)();
, поэтому мы вызываем SumWithNoArgs (), чтобы получить результат с пропуском.
Вам необходимо либо связать вашу функцию в конструкторе, либо объявить функцию как переменную класса, чтобы она автоматически привязывалась к вашему классу.