Задайте вопрос и получите краткое содержание документа через любого ИИ-провайдера на этой странице
История версий
- "Добавлена утилита 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
Интеграция Angular: Документация хука usePathname
Хук usePathname возвращает текущий путь браузера с удаленным сегментом локали в виде Angular Signal<string>. Это полезно для создания навигации с учетом локали — например, для определения активного элемента навигации — без необходимости ручного удаления префикса локали.
Импорт usePathname в Angular
Копировать код в буфер обмена
import { usePathname } from "angular-intlayer";Обзор
usePathname читает window.location.pathname, удаляет префикс локали через getPathWithoutLocale и обновляет сигнал каждый раз, когда браузер вызывает событие popstate (навигация назад/вперед). Он использует DestroyRef Angular для автоматической очистки прослушивателя событий при уничтожении компонента.
Использование
Копировать код в буфер обмена
import { Component, input } from "@angular/core";import { usePathname } from "angular-intlayer";@Component({ standalone: true, selector: "app-nav-item", template: ` <a [href]="href()" [attr.aria-current]="pathname() === href() ? 'page' : null" > {{ label() }} </a> `,})export class NavItemComponent { readonly href = input.required<string>(); readonly label = input.required<string>(); readonly pathname = usePathname();}Возвращаемое значение
Открыть таблицу в модальном окне для четкого просмотра всех данных
| Тип | Описание |
|---|---|
Signal<string> | Сигнал Angular, содержащий текущий путь без префикса локали. |
Поведение
- Удаление локали: Удаляет начальный сегмент локали (например,
/ru/dashboard→/dashboard). - Реактивность: Автоматически обновляется при событиях
popstate(навигация браузера назад / вперед). - Безопасность SSR: Возвращает
"", еслиwindowнедоступно. - Очистка: Прослушиватель
popstateудаляется черезDestroyRef.onDestroyпри уничтожении хост-компонента.
Пример
Копировать код в буфер обмена
import { Component } from "@angular/core";import { usePathname } from "angular-intlayer";@Component({ standalone: true, selector: "app-sidebar", template: ` <nav> @for (link of links; track link.href) { <a [href]="link.href" [style.font-weight]="pathname() === link.href ? 'bold' : 'normal'" > {{ link.label }} </a> } </nav> `,})export class SidebarComponent { readonly links = [ { href: "/dashboard", label: "Панель управления" }, { href: "/settings", label: "Настройки" }, ]; readonly pathname = usePathname();}Связанные ресурсы
useLocale— текущая локаль + переключатель локалиgetPathWithoutLocale— базовая утилита, используемая этим хуком