React-router-redux занимает два щелчка по ссылке, чтобы обновить состояние местоположения.

У меня проблема с моим приложением, и я нигде не могу найти решение. Я использую react-router-redux и syncHistoryWithStore.

Когда я нажимаю на свою навигацию, чтобы изменить маршрут, используя Link, загружается новый маршрут, URL-адрес в браузере обновляется, однако состояние location не обновляется, пока я не щелкну ссылку два раза.

ОБНОВЛЕНИЕ: я заметил, что это может быть как-то связано с Chrome React DevTools. Если я открою React Devtools и выберу провайдера, а затем разверну дерево компонентов по одному, состояние location обновится, и все будет работать нормально. Однако, если я использую панель поиска для поиска целевого компонента, состояние location больше не работает, и приложение ломается. Странный?!

Кто-нибудь сталкивался с подобной проблемой раньше? Есть идеи, как это исправить?


person spik3s    schedule 19.06.2016    source источник
comment
вы возвращаете false в любых обработчиках кликов для ваших ссылок условно? как будто что-то не так настроено? ака, если URL-адрес не изменился, вы можете убить распространение, чтобы не обновлять состояние до того, как URL-адрес действительно изменится. Хотя не совсем уверен, не видя кода   -  person John Ruddell    schedule 20.06.2016
comment
У меня такая же проблема. URL-адрес меняется, но для фактического изменения местоположения требуется еще один щелчок по ссылке.   -  person Luoruize    schedule 19.03.2017