Вы когда-нибудь замечали эти маленькие фрагменты текста на некоторых веб-сайтах, обозначающие ваше текущее местоположение на сайте? Их называют хлебными крошками, и они могут быть полезным способом ориентирования пользователей, особенно при навигации по сложным веб-сайтам. Эта статья покажет вам, как создавать хлебные крошки в React.js.
Что такое хлебные крошки и насколько они важны?
Хлебные крошки обычно представляют собой небольшие фрагменты текста, которые показывают текущее местоположение на веб-сайте. Они могут быть полезны для ориентирования пользователей, особенно при навигации по веб-сайтам с несколькими страницами. Предоставляя след ссылок, хлебные крошки могут помочь пользователям понять, где они находятся на веб-сайте, и позволить им легко вернуться к предыдущим разделам.
Важно отметить, что хлебные крошки не следует использовать в качестве основного средства навигации по веб-сайту. Скорее, их следует использовать в дополнение к другим элементам навигации, таким как меню или панель поиска.
Как создать хлебные крошки в React.js
Существует два основных способа создания хлебных крошек в React.js: с помощью реакция-маршрутизатор-дом библиотеку или с помощью использовать-реагировать-маршрутизатор-хлебные крошки библиотека. Но прежде чем начать, нужно создать приложение React.
Способ 1: с помощью библиотеки react-router-dom
С библиотекой react-router-dom вы можете вручную создавать хлебные крошки для каждого пути в вашем приложении React. Библиотека предоставляет компонент, который можно использовать для создания хлебных крошек.
Чтобы использовать библиотеку react-router-dom, вам сначала нужно установить ее с помощью npm:
нпм установить реакция-маршрутизатор-дом
После установки библиотеки вы можете импортировать ее в свой компонент React:
Импортировать { Связь } от 'реакция-маршрутизатор-дом'
Затем вы можете использовать Компонент для создания панировочных сухарей:
<Ссылка на ="/">Дом</Link>
<Ссылка на ="/products">Продукты</Link>
<Ссылка на ="/products/1">Продукт 1</Link>
Теперь вы можете добавить некоторые стили к хлебным крошкам и выделить текущую страницу, на которой вы находитесь. Для этого вы можете использовать className опора компонент. Чтобы получить текущий путь, вы можете использовать расположение объект из библиотеки react-router-dom:
Импортировать {Ссылка, использованиеместоположения} от 'реакция-маршрутизатор-дом'
функцияПанировочные сухари() {
константа местоположение = использованиеМестоположение();
возвращаться (
<навигация>
<Ссылка на ="/"
className={location.pathname "/"? "хлебные крошки-активный": "панировочные сухари не активны"}
>
Дом
</Link>
<Ссылка на ="/products"
className={location.pathname.startsWith("/products")? "хлебные крошки-активный": "панировочные сухари не активны"}
>
Продукты
</Link>
<Ссылка на ="/products/1"
className={location.pathname "/products/1"? "хлебные крошки-активный": "панировочные сухари не активны"}
>
Продукт 1
</Link>
</nav>
);
}
экспортпо умолчанию Панировочные сухари;
Теперь создайте новый файл CSS и назовите его хлебные крошки.css. Добавьте в файл следующие правила CSS:
.breadcrumb-неактивен {
цвет: #cccccc;
}
.breadcrumb-активный {
цвет: #000000;
}
.breadcrumb-стрелка {
поле слева: 10px;
поле справа: 10px;
}
Теперь импортируйте файл CSS в компонент React и добавьте хлебная крошка-стрелка класс для вашего компоненты:
Импортировать {Ссылка, использованиеместоположения} от 'реакция-маршрутизатор-дом'
Импортировать "./breadcrumbs.css";
функцияПанировочные сухари() {
константа местоположение = использованиеМестоположение();
возвращаться (
<навигация>
<Ссылка на ="/"
className={location.pathname "/"? "хлебные крошки-активный": "панировочные сухари не активны"}
>
Дом
</Link>
<диапазон className="хлебная крошка-стрелка">&гт;</span>
<Ссылка на ="/products"
className={location.pathname.startsWith("/products")? "хлебные крошки-активный": "панировочные сухари не активны"}
>
Продукты
</Link>
<диапазон className="хлебная крошка-стрелка">&гт;</span>
<Ссылка на ="/products/1"
className={location.pathname "/products/1"? "хлебные крошки-активный": "панировочные сухари не активны"}
>
Продукт 1
</Link>
</nav>
);
}
экспортпо умолчанию Панировочные сухари;
Есть различные типы хуков в React. Библиотека react-router-dom использованиеМестоположение hook дает вам доступ к объекту местоположения, который содержит информацию о текущем пути URL.
Свойство className компонента добавляет класс CSS в хлебные крошки. Свойство className принимает строку или массив строк. Если это строка, она добавит строку как один класс к элементу. Если это массив строк, каждая строка в массиве будет добавлена как отдельный класс.
начинается с метод проверяет, начинается ли текущий путь с "/products". Это связано с тем, что навигационная цепочка для страницы продуктов должна быть активной не только при пути «/products», но и при пути «/products/1», «/products/2» и т. д.
Способ 2: с помощью библиотеки use-react-router-breadcrumbs
Еще один способ создать хлебные крошки в React — использовать библиотеку use-react-router-breadcrumbs. Эта библиотека автоматически генерирует хлебные крошки на основе маршрутов, определенных в вашем приложении React.
Чтобы использовать эту библиотеку, вам сначала нужно установить ее с помощью npm:
нпм установитьиспользовать-реагировать-маршрутизатор-хлебные крошки
После установки библиотеки вы можете импортировать ее в свой компонент React:
Импортировать использовать панировочные сухари от «использовать-реагировать-маршрутизатор-хлебные крошки»
Затем вы можете использовать использовать панировочные сухари крючок для создания панировочных сухарей:
константа хлебные крошки = использовать хлебные крошки();
консоль.log (хлебные крошки);
Это запишет в консоль массив объектов хлебных крошек. Каждый объект навигационной цепочки содержит информацию о маршруте, такую как имя, путь и параметры.
Теперь вы можете вывести свои хлебные крошки на экран. Вы можете использовать компонент из библиотеки react-router для создания хлебных крошек:
Импортировать { Связь } от 'реакция-маршрутизатор-дом'
Импортировать использовать панировочные сухари от «использовать-реагировать-маршрутизатор-хлебные крошки»
константа маршруты = [
{ путь: '/users/:userId', панировочные сухари: 'Пример 1' },
{ путь: '/data', панировочные сухари: 'Пример 2' }
];
функцияПанировочные сухари() {
константа хлебные крошки = использовать хлебные крошки (маршруты);
консоль.log (хлебные крошки)
возвращаться (
<навигация>
{breadcrumbs.map(({ совпадение, хлебные крошки }) => (
<Ключ ссылки = {match.url} на = {match.url}>
{хлебные крошки} /
</Link>
))}
</nav>
);
}
экспортпо умолчанию Панировочные сухари;
Компонент Link импортируется из библиотеки react-router-dom. Вы будете использовать этот компонент для создания ссылок на другие части приложения. Вы также можете создавать защищенные маршруты с помощью компонента Link.
Создается массив объектов маршрута. Каждый объект маршрута содержит путь и свойство навигационной цепочки. Свойство пути соответствует URL-пути, а свойство хлебных крошек соответствует имени хлебных крошек.
использовать панировочные сухари крючок используется для создания панировочных сухарей. Этот хук принимает в качестве параметра массив маршрутов. Маршруты используются для генерации хлебных крошек.
Метод карты используется для перебора массива хлебных крошек. Для каждой хлебной крошки компонент создан. Компонент Link имеет к prop, который соответствует URL-пути хлебной крошки. Сама хлебная крошка отображается как содержимое компонент.
Теперь вы можете добавить некоторые стили к панировочным сухарям. Создайте новый файл CSS и назовите его Хлебные крошки.css. После этого добавьте в файл следующие правила CSS:
.breadcrumb-неактивен {
цвет: #cccccc;
}
.breadcrumb-активный {
цвет: #000000;
}
Теперь вы можете импортировать файл CSS в компонент React и добавить классы хлебных крошек в компоненты:
Импортировать {Ссылка, использованиеместоположения} от 'реакция-маршрутизатор-дом'
Импортировать использовать панировочные сухари от «использовать-реагировать-маршрутизатор-хлебные крошки»
Импортировать "./Breadcrumbs.css";
константа маршруты = [
{ путь: '/users/:userId', панировочные сухари: 'Пример 1' },
{ путь: '/data', панировочные сухари: 'Пример 2' }
];
функцияПанировочные сухари() {
константа хлебные крошки = использовать хлебные крошки (маршруты);
константа местоположение = использованиеМестоположение()
возвращаться (
<навигация>
{breadcrumbs.map(({ совпадение, хлебные крошки }) => (
<Связь
ключ = {match.url}
to={match.url}
className={match.pathname location.pathname? "хлебные крошки-активный": "панировочные сухари не активны"}
>
{хлебные крошки} /
</Link>
))}
</nav>
);
}
экспортпо умолчанию Панировочные сухари;
Увеличьте вовлеченность пользователей с помощью «хлебных крошек»
С помощью хлебных крошек вы можете не только помочь пользователям понять, где они находятся на вашем веб-сайте, но и повысить вовлеченность пользователей. Хлебные крошки можно использовать для отображения прогресса пользователя в выполнении задачи, такой как процесс регистрации или покупка. Показывая прогресс пользователя, вы можете побудить его выполнить задачу.
Есть также много других вещей, которые вы должны учитывать при разработке веб-сайта, таких как удобство использования, доступность и удобство для мобильных устройств. Однако, если вы помните об этих вещах, вы можете создать веб-сайт, который будет одновременно удобным и привлекательным.