/
DevDenzo
/
ERP
Обзор
Документация
Войти
/
DevDenzo
/
ERP
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/hooks/data/useGettingRouteData.js
30 строк
2 KB
Denis Sklyarskij
Инициализирован репозиторий
14 янв 2026, 23:32
14 янв 2026, 23:32
1df3d47
Код
Авторство
О чём код?
import { useLocation } from 'react-router-dom'; /** * Хук для получения текущего корневого сегмента пути маршрута * * @returns {Object} Объект с полем routePath * @property {string} routePath — первый сегмент пути после домена (например, для "/users/profile" вернёт "users") * * @example * const { routePath } = useGettingRoutePath(); * // Если текущий URL: /users/profile → routePath === "users" * // Если текущий URL: /settings → routePath === "settings" * // Если текущий URL: / → routePath === "" (пустая строка) */ export const useGettingRoutePath = () => { // Получаем объект location из react-router-dom // location содержит информацию о текущем URL (pathname, search, hash и др.) const location = useLocation(); // Извлекаем первый сегмент пути после домена // 1. location.pathname — полная строка пути (например, "/users/profile") // 2. split('/') — разбиваем строку по символу "/" → ['', 'users', 'profile'] // 3. [1] — берём второй элемент массива (индекс 1), который соответствует первому сегменту пути // Для корневого пути "/" массив будет ['', ''], поэтому вернётся пустая строка const routePath = location.pathname.split('/')[1]; // Возвращаем результат в виде объекта // Это позволяет легко расширять хук в будущем (добавлять новые поля) return { routePath }; };