Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Додано утиліту usePathname"v10.0.023.06.2026
- "Ініціалізація історії"v8.2.022.06.2026
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
Інтеграція Preact: Документація Хука usePathname
Хук usePathname повертає поточний шлях браузера (pathname) з видаленим сегментом локалі. Він корисний для створення навігації, що залежить від локалі — наприклад, для визначення, який елемент навігації активний — без необхідності вручну видаляти префікс локалі.
Імпорт usePathname у Preact
Скопіюйте код у буфер обміну
import { usePathname } from "preact-intlayer";Огляд
usePathname читає window.location.pathname, видаляє префікс локалі за допомогою getPathWithoutLocale та викликає повторний рендеринг компонента кожного разу, коли браузер генерує подію popstate (навігація назад/вперед). Під час серверного рендерингу (SSR) повертає порожній рядок.
Використання
Скопіюйте код у буфер обміну
import type { FunctionComponent } from "preact";import { usePathname } from "preact-intlayer";type NavItemProps = { href: string; label: string;};const NavItem: FunctionComponent<NavItemProps> = ({ href, label }) => { const pathname = usePathname(); const isActive = pathname === href; return ( <a href={href} aria-current={isActive ? "page" : undefined}> {label} </a> );};export default NavItem;Значення, що повертається
Відкрийте таблицю в модальному вікні, щоб чітко переглянути всі дані
| Тип | Опис |
|---|---|
string | Поточний шлях без префіксу локалі. Порожній рядок під час серверного рендерингу (SSR). |
Поведінка
- Видалення локалі (Locale stripping): Видаляє початковий сегмент локалі (наприклад,
/uk/dashboard→/dashboard). - Реактивність: Автоматично оновлюється під час подій
popstate(навігація браузера назад / вперед). - Безпека для SSR: Повертає
"", коли об'єктwindowнедоступний. - Очищення (Cleanup): Слухач
popstateавтоматично видаляється при розмонтуванні (unmount) компонента.
Приклад
Скопіюйте код у буфер обміну
import type { FunctionComponent } from "preact";import { usePathname } from "preact-intlayer";const links = [ { href: "/dashboard", label: "Дашборд" }, { href: "/settings", label: "Налаштування" },];const Sidebar: FunctionComponent = () => { const pathname = usePathname(); return ( <nav> {links.map(({ href, label }) => ( <a key={href} href={href} style={{ fontWeight: pathname === href ? "bold" : "normal" }} > {label} </a> ))} </nav> );};export default Sidebar;Пов'язане
useLocale— поточна локаль + перемикач локаліgetPathWithoutLocale— базова утиліта, що використовується цим хуком