---
updatedAt: 2025-08-23
createdAt: 2025-08-23
title: Документация хука useRewriteURL
description: Svelte-специфичный хук для управления локализованными перезаписями URL в Intlayer.
keywords:
  - useRewriteURL
  - svelte-intlayer
  - svelte
  - sveltekit
  - internationalization
  - i18n
slugs:
  - doc
  - packages
  - svelte-intlayer
  - useRewriteURL
---

# Хук useRewriteURL

Хук `useRewriteURL` для Svelte предназначен для управления локализованными перезаписями URL на стороне клиента. Он автоматически корректирует URL в браузере до «красивой» локализованной версии на основе текущей локали и конфигурации в `intlayer.config.ts`.

Он обновляет URL незаметно, используя `window.history.replaceState`, избегая полной навигации SvelteKit.

## Использование

Вызовите хук внутри Svelte-компонента.

```svelte
<script>
  import { useRewriteURL } from "svelte-intlayer";

  // Автоматически исправляет /fr/tests на /fr/essais в адресной строке, если существует правило переписывания
  useRewriteURL();
</script>

<slot />
```

## Как это работает

1. **Реактивные обновления**: Хук подписывается на хранилище (store) Intlayer `locale`.
2. **Обнаружение**: При любом изменении локали (или при монтировании) он вычисляет, есть ли у текущего `window.location.pathname` более удобочитаемый локализованный алиас, определённый в ваших правилах переписывания.
3. **Коррекция URL**: Если найден такой путь, хук вызывает `window.history.replaceState` для обновления адресной строки без полной перезагрузки страницы и без вызова логики навигации SvelteKit.

## Зачем это использовать?

- **Лучшие практики SEO**: Обеспечивает индексирование поисковыми системами только читаемой, локализованной версии ваших URL.
- **Improved UX**: Исправляет вручную введённые URL, чтобы они соответствовали вашей предпочтительной структуре именования.
- **Silent Updates**: Изменяет адресную строку без влияния на дерево компонентов или историю навигации.
