Использую React в связке с Next.js. Есть степпер, он независим от url, а зависит от стора в редаксе.
Сейчас делаю функционал на back button и клиент хочет что-бы он был одинаковый и на кнопке кастомной и на кнопку браузерной.
Степпер находится постоянно на
/new
урле.
Пробую отловить нужный экшен с помощью
history пакета:
import Router from 'next/router';
import { createBrowserHistory } from 'history';
const history = createBrowserHistory();
history.listen((location) => {
if (location.action === 'POP') {
dispatch(updateScreenStep('back'));
Router.push('/new'); // всегда обновляю урлу, что-бы не пошло дальше неё
}
});
Оно работает, но с ошибками, если большая вложенность степов.
Как такое можно реализовать?