Мы рассмотрим, как создать динамический компонент хлебных крошек с помощью React Router. Хлебные крошки предоставляют пользователям набор ссылок, которые представляют их текущее местоположение в приложении. Мы рассмотрим каждый шаг кода, объясним его назначение и поможем вам реализовать эту функцию в ваших проектах React.
- Что такое панировочные сухари?
Представьте, что вы просматриваете интернет-магазин электроники. Вы начинаете с посещения домашней страницы, затем переходите в раздел «Продукты», затем в «Электроника» и, наконец, попадаете в категорию «Ноутбуки». На каждом этапе хлебные крошки действуют как руководство, показывая вам пройденный путь и позволяя при необходимости быстро вернуться к предыдущему разделу.
- Теперь давайте углубимся в код и его функциональность:
1) Импорт зависимостей:
Мы импортируем хук useLocation из библиотеки react-router-dom. Этот хук позволяет нам получить доступ к текущему объекту местоположения, содержащему информацию об URL-пути.
2) Получение текущего местоположения:
Внутри компонента мы вызываем хук useLocation, чтобы получить текущее местоположение. Он возвращает объект с информацией о текущем пути URL.
3) Разделение пути на сегменты:
Мы разбиваем имя пути на сегменты, используя метод разделения с символом «/» в качестве разделителя. Это создает массив сегментов пути. Например, для пути «/products/electronics/laptops» возвращаемый массив будет следующим: [‘’, ‘products’, ‘electronics’, ‘laptops’].
4) Создание URL-адреса хлебной крошки:
Мы инициализируем пустую строку url, в которой будет храниться добавочный путь, когда мы прокручиваем массив сегментов.
5) Сопоставление сегментов со ссылками хлебной крошки:
Используя метод карты, мы перебираем массив сегментов и строим каждую навигационную цепочку. Для каждого сегмента мы обновляем URL-адрес, добавляя текущий сегмент с помощью литералов шаблона.
6) Рендеринг ссылок хлебных крошек: внутри функции карты мы возвращаем элемент Link из react-router-dom (‹Link›) для каждого сегмента. Атрибут to создается путем объединения URL-адреса с базовым URL-адресом примера (https://example.com). Если сегмент представляет собой пустую строку, мы отображаем «Дом» в качестве текста ссылки; в противном случае мы используем сам сегмент.
7) Заключение:
Следуя этому объяснению кода, вы теперь хорошо понимаете, как создать динамический компонент навигационной цепочки с помощью React Router.
Хлебные крошки предоставляют пользователям ценный контекст, улучшая их навигацию по вашему приложению. Не стесняйтесь настраивать и расширять этот код в соответствии с конкретными требованиями вашего проекта.
⚠Примечание: я хотел бы, чтобы вы указали, что вы можете получить компонент хлебных крошек, используя компоненты пользовательского интерфейса, такие как Chakra, MUI или Ant Design. Но я хотел, чтобы вы знали логику, стоящую за этим, и теперь вы можете обращаться с этим, как хотите.