Sorunuzu sorun ve bu sayfaya ve seçtiğiniz AI sağlayıcısına referans vererek belgenin bir özetini alın
Sürüm Geçmişi
- "İlk dokümantasyon"v9.0.022.06.2026
Bu sayfanın içeriği bir yapay zeka kullanılarak çevrildi.
Orijinal içeriğin İngilizce son sürümünü görüntüleyinIf 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
Dokümantasyon: intlayer İçinde comparePaths Fonksiyonu
Açıklama
comparePaths fonksiyonu, locale (dil) segmentini, protokolü/sunucuyu, sorgu dizesini, karma değerini (hash) ve sondaki eğik çizgileri göz ardı ederek iki URL'nin veya yolun eşitliğini karşılaştırır. Bir gezinme bağlantısının mevcut sayfayı işaret edip etmediğini belirlemenin —örneğin aktif bağlantıyı vurgulamak için— kendi (hataya açık) normalleştirme mantığınızı yazmanıza gerek kalmadan önerilen yoludur.
İçeride locale segmentini kaldırmak için getPathWithoutLocale'i yeniden kullanır, böylece yapılandırılmış yönlendirme modunuza ve dillerinize saygı duyar.
Paket ayrıca, karşılaştırma için kullanılan standartlaştırılmış, dilden bağımsız yolu döndüren temel normalizePath yardımcısını da dışa aktarır.
Anahtar Özellikler:
- Dilden bağımsız karşılaştırma (
/tr/about,/aboutile eşleşir) - Hem mutlak URL'lerle hem de göreceli yollarla çalışır
- Sorgu dizesini, karmayı ve sondaki eğik çizgileri yoksayar
- Eksik baştaki eğik çizgileri ve boş değerleri tolere eder (
/olarak normalleştirilir) - Hafif —
getPathWithoutLocaleüzerine inşa edilmiştir
Fonksiyon İmzası
Kodu panoya kopyala
comparePaths( pathname: string, // Gerekli href: string, // Gerekli locales?: Locales[] // İsteğe Bağlı): booleannormalizePath( inputUrl: string, // Gerekli locales?: Locales[] // İsteğe Bağlı): stringParametreler
pathname: string- Açıklama: Karşılaştırılacak ilk URL dizesi veya yolu (genellikle mevcut yol).
- Tip:
string - Gerekli: Evet
href: string- Açıklama: Karşılaştırılacak ikinci URL dizesi veya yolu (genellikle bir gezinme bağlantısının
href'i). - Tip:
string - Gerekli: Evet
- Açıklama: Karşılaştırılacak ikinci URL dizesi veya yolu (genellikle bir gezinme bağlantısının
locales: Locales[]- Açıklama: Desteklenen dillerin isteğe bağlı dizisi. Varsayılan olarak projede yapılandırılan dillere eşittir.
- Tip:
Locales[] - Gerekli: Hayır (İsteğe Bağlı)
Döndürür
- Tip:
boolean - Açıklama: Her iki giriş de aynı dilden bağımsız yola çözümlenirse
true, aksi takdirdefalsedöner.
Örnek Kullanım
Temel Kullanım
Kodu panoya kopyala
import { comparePaths } from "intlayer";
comparePaths("/ru/path", "/path"); // true
comparePaths("/ru/path/", "/path"); // true
comparePaths("/ru/path", "/path/"); // true
comparePaths("/ru/", "/"); // true
comparePaths("/ru", "/"); // true
comparePaths("ru/path", "/path"); // true
comparePaths("", "/"); // true
comparePaths("/ru", ""); // true
comparePaths("/ru/path", "/other"); // falseMutlak ve Göreceli URL'ler
Kodu panoya kopyala
import { comparePaths } from "intlayer";comparePaths("https://example.com/ru/path", "/path"); // trueAktif gezinme bağlantısını vurgulama
Kodu panoya kopyala
import { comparePaths } from "intlayer";import { useLocation } from "react-router";const NavLink = ({ href, children }) => { const { pathname } = useLocation(); const isActive = comparePaths(pathname, href); return ( <a href={href} aria-current={isActive ? "page" : undefined}> {children} </a> );};normalizePath
normalizePath, comparePaths tarafından kullanılan standartlaştırılmış, dilden bağımsız yolu döndürür. Locale segmentini, protokolü/sunucuyu, sorgu dizesini ve karmayı kaldırır, tek bir baştaki eğik çizgi sağlar, herhangi bir sondaki eğik çizgiyi kaldırır (kök dizin hariç) ve boş değerler için /'a geri döner.
Kodu panoya kopyala
import { normalizePath } from "intlayer";
normalizePath("/ru/path"); // "/path"
normalizePath("/ru/path/"); // "/path"
normalizePath("ru/path"); // "/path"
normalizePath("/ru/"); // "/"
normalizePath("/ru"); // "/"
normalizePath(""); // "/"
normalizePath("https://example.com/ru/path"); // "/path"İlgili Fonksiyonlar
getPathWithoutLocale: Bir URL'den veya yoldan locale segmentini kaldırır.getPrefix: Verilen bir locale için URL önekini belirler.getLocalizedUrl: Belirli bir locale için yerelleştirilmiş bir URL oluşturur.
TypeScript
Kodu panoya kopyala
function normalizePath(inputUrl: string, locales?: Locales[]): string;function comparePaths( pathname: string, href: string, locales?: Locales[]): boolean;