Програмна навігація
Компоненти Link та NavLink використовують, коли потрібно переміститися за іншим маршрутом при натисканні посилання.
Утім бувають випадки, коли потрібно здійснити переміщення на інший маршрут тільки при виконанні певної послідовності операцій і тільки у разі їх коректного виконання. Наприклад, при натисканні на кнопку авторизації спочатку зробити HTTP-запит на сервер, отримані дані записати в стейт, і тільки після цього у разі успішної авторизації перенаправити користувача на якийсь інший маршрут.
Хук useNavigate
Хук useNavigate надає функцію navigate якій під час виклику передають шлях, куди необхідно виконати навігацію. Цей спосіб імперативний, більш гнучкий і вимагає менше коду.
Компонент Navigate
Другий спосіб використання навігації - компонент Navigate. Це - обгортка над хуком useNavigate. Він виконує навігацію в момент рендерингу. Шлях і додаткові параметри передають за допомогою prop. Такий код декларативніший, менш гнучкий і містить більше коду.
Який спосіб навігації обрати - залежить від задачі та уподобань розробника. Більш вживаний все ж таки - перший варіант.
Last updated