Yazar:
    Oluşturma:2026-06-22Son güncelleme:2026-06-22

    Svelte Entegrasyonu: usePathname Dokümantasyonu

    usePathname fonksiyonu, locale segmenti kaldırılmış geçerli tarayıcı yol adını (pathname) bir Svelte Readable<string> store'u olarak döndürür. Locale önekini manuel olarak kaldırmanıza gerek kalmadan, locale farkındalığına sahip navigasyonlar oluşturmak (örneğin hangi navigasyon öğesinin aktif olduğunu belirlemek) için yararlıdır.

    Svelte'de usePathname Kullanımı

    typescript
    import { usePathname } from "svelte-intlayer";

    Genel Bakış

    usePathname, window.location.pathname üzerinden okuma yapan ve locale önekini getPathWithoutLocale aracılığıyla kaldıran bir Svelte okuma (readable) store'u oluşturur ve tarayıcı her popstate olayı tetiklediğinde (geri/ileri gezinme) yeni bir değer yayar. Bileşenlerde $ store sözdizimi ile abone olunur.

    Kullanım

    src/components/NavItem.svelte
    <script lang="ts">  import { usePathname } from "svelte-intlayer";  export let href: string;  export let label: string;  const pathname = usePathname();</script><a {href} aria-current={$pathname === href ? "page" : undefined}>  {label}</a>

    Döndürülen Değer

    Tür Açıklama
    Readable<string> Locale öneki olmadan geçerli yol adını (pathname) içeren Svelte readable store'u.

    Davranış

    • Locale kaldırma: Başta bulunan locale segmentini kaldırır (ör. /tr/dashboard/dashboard).
    • Reaktif: Her popstate olayında (tarayıcıda geri / ileri navigasyonu) yeni bir değer yayar.
    • SSR-güvenli: window mevcut olmadığında "" döndürür.
    • Temizleme (Cleanup): Son abone abonelikten çıktığında popstate dinleyicisi otomatik olarak kaldırılır.

    Örnek

    src/components/Sidebar.svelte
    <script lang="ts">  import { usePathname } from "svelte-intlayer";  const links = [    { href: "/dashboard", label: "Gösterge Paneli" },    { href: "/settings", label: "Ayarlar" },  ];  const pathname = usePathname();</script><nav>  {#each links as link}    <a      href={link.href}      style:font-weight={$pathname === link.href ? "bold" : "normal"}    >      {link.label}    </a>  {/each}</nav>

    İlgili