HappySanta/router

params при swipe back ломаются

eolme-fallback opened this issue · 4 comments

Дело в том, что на роут, который идет по истории передаются params от текущего

А как воспроизвести?

Параметры могут быть не синхронизированы с анимациями панелей: роут меняется мгновенно а панели с анимацией.
Обычно нужно чтобы параметры не менялись до того как компонент не отмонтируется. Чтобы получить такое поведение надо или сохранять параметры в useRef/this.state или получать параметры через useParams() /withParams (они делают тоже самое)

Кейс такой: 2 страницы в истории и у них разные params.
Собственно, делаем swipeback с текущей на предыдущую - предыдущая рендерится и берет параметры от текущей со всеми вытекающими.

После смены панелей, они же отмонтируются, разве нет? useRef/this.state будут новыми, а useParams/withParams будут возвращать из текущего роутинга. Придумать надо как пробрасывать предыдущие params 🧐

Для этого есть решение в 0.1.6
в хук useParams можно передать id панели, тогда такой проблемы со свайпом назад не будет