Для правильного ответа также требуется модальный код. Нам нужно знать, какой модал вы используете и как работает его механизм переключения.
Однако, глядя на ваш код, я нашел опечатку.
this.handleSHow = this.handleShow.bind(this);
Здесь в this.handleSHow
H
в заглавных буквах. Поэтому, если вы вызываете метод для запуска открытого состояния модала, например this.handleShow()
, он не будет работать.
Либо исправьте опечатку, либо вызовите метод следующим образом: this.handleSHow()
.
Редактировать: Снова глядя на ваш код, я только что понял, что вам не нужен this.handleSHow = this.handleShow.bind(this);
эта строка, потому что вы используете синтаксис функции стрелки для объявления вашего метода, т.е. handleShow = () =>
. Функции стрелок автоматически связывают контекст this
с вашей функцией из внешней области видимости, которая в данном случае является вашим App
компонентом, поэтому вам не нужно .bind(this)
в конструкторе.
Если вы все еще хотите чтобы сохранить this.handleSHow = this.handleShow.bind(this);
, вам нужно изменить синтаксис функции стрелки handleShow = () =>
на handleShow() { ... }
.