Ajukan pertanyaan Anda dan dapatkan ringkasan dokumen dengan merujuk halaman ini dan penyedia AI pilihan Anda
Riwayat Versi
- "Dokumentasi awal"v7.1.016/11/2025
Konten halaman ini diterjemahkan menggunakan AI.
Lihat versi terakhir dari konten aslinya dalam bahasa InggrisIf 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
Dokumentasi: Fungsi getPrefix dalam intlayer
Deskripsi
Fungsi getPrefix menentukan prefix URL untuk locale tertentu berdasarkan konfigurasi mode routing. Fungsi ini membandingkan locale dengan default locale dan mengembalikan sebuah objek yang berisi tiga format prefix berbeda untuk konstruksi URL yang fleksibel.
Fitur Utama:
- Menerima locale sebagai parameter pertama (wajib)
- Objek
optionsopsional dengandefaultLocaledanmode - Mengembalikan objek dengan properti
prefixdanlocalePrefix - Mendukung semua mode routing:
prefix-no-default,prefix-all,no-prefix, dansearch-params - Utilitas ringan untuk menentukan kapan menambahkan prefix locale
Tanda Tangan Fungsi
Salin kode ke clipboard
getPrefix( locale: Locales, // Wajib options?: { // Opsional defaultLocale?: Locales; mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'; }): GetPrefixResulttype GetPrefixResult = { prefix: string; // misalnya, 'fr/' atau '' localePrefix?: Locale; // misalnya, 'fr' atau undefined}Parameter
locale: Locales- Deskripsi: Locale yang akan digunakan untuk menghasilkan prefix. Jika nilainya falsy (undefined, null, string kosong), fungsi akan mengembalikan string kosong.
- Tipe:
Locales - Wajib: Ya
options?: object- Deskripsi: Objek konfigurasi untuk penentuan prefix.
- Tipe:
object Wajib: Tidak (Opsional)
options.defaultLocale?: Locales- Deskripsi: Locale default untuk aplikasi. Jika tidak disediakan, menggunakan locale default yang dikonfigurasi dari konfigurasi proyek Anda.
- Tipe:
Locales - Default:
Konfigurasi Proyek
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'- Deskripsi: Mode routing URL untuk penanganan locale. Jika tidak disediakan, menggunakan mode yang dikonfigurasi dari konfigurasi proyek Anda.
- Tipe:
'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' - Default:
Konfigurasi Proyek - Mode:
prefix-no-default: Mengembalikan string kosong ketika locale sama dengan locale defaultprefix-all: Mengembalikan prefix untuk semua locale termasuk defaultno-prefix: Mengembalikan string kosong (tanpa prefix di URL)search-params: Mengembalikan string kosong (locale dalam parameter query)
Mengembalikan
- Tipe:
GetPrefixResult - Deskripsi: Objek yang berisi tiga format prefix yang berbeda:
prefix: Prefix path dengan slash di akhir (misalnya,'fr/','')localePrefix: Identifier locale tanpa slash (misalnya,'fr',undefined)
Contoh Penggunaan
Penggunaan Dasar
Salin kode ke clipboard
import { getPrefix, Locales } from "intlayer";
// Periksa prefix untuk locale Bahasa Inggris
getPrefix(Locales.ENGLISH, {
defaultLocale: Locales.ENGLISH,
mode: "prefix-all",
});
// Mengembalikan: { prefix: 'en/', localePrefix: 'en' }
// Periksa prefix untuk locale Bahasa Perancis
getPrefix(Locales.FRENCH, {
defaultLocale: Locales.ENGLISH,
mode: "prefix-no-default",
});
// Mengembalikan: { prefix: 'fr/', localePrefix: 'fr' }Mode Routing Berbeda
Salin kode ke clipboard
import { getPrefix, Locales } from "intlayer";// prefix-all: Selalu mengembalikan prefixgetPrefix(Locales.ENGLISH, { mode: "prefix-all", defaultLocale: Locales.ENGLISH,});// Mengembalikan: { prefix: '/en', localePrefix: 'en' }// prefix-no-default: Tidak ada prefix saat locale sama dengan defaultgetPrefix(Locales.ENGLISH, { mode: "prefix-no-default", defaultLocale: Locales.ENGLISH,});// Mengembalikan: { prefix: '', localePrefix: undefined }// prefix-no-default: Mengembalikan prefix saat locale berbeda dari defaultgetPrefix(Locales.FRENCH, { mode: "prefix-no-default", defaultLocale: Locales.ENGLISH,});// Mengembalikan: { prefix: 'fr/', localePrefix: 'fr' }// no-prefix & search-params: Tidak pernah mengembalikan prefixgetPrefix(Locales.ENGLISH, { mode: "no-prefix" });// Mengembalikan: { prefix: '', localePrefix: undefined }getPrefix(Locales.ENGLISH, { mode: "search-params" });// Mengembalikan: { prefix: '', localePrefix: undefined }Contoh Praktis
Salin kode ke clipboard
import { getPrefix, Locales } from "intlayer";// Membangun URL dengan prefix yang sesuai untuk locale tertentuconst locale = Locales.FRENCH;const { prefix, localePrefix } = getPrefix(locale, { defaultLocale: Locales.ENGLISH, mode: "prefix-no-default",});// Menggunakan prefix untuk konstruksi pathconst url1 = `/${prefix}about`.replace(/\/+/g, "/");// Hasil: "/fr/about"// Menggunakan localePrefix untuk identifikasi localeconsole.log(`Current locale: ${localePrefix}`);// Output: "Current locale: fr"Fungsi Terkait
getLocalizedUrl: Menghasilkan URL yang dilokalkan untuk locale tertentugetMultilingualUrls: Menghasilkan URL untuk semua locale yang dikonfigurasi
TypeScript
Salin kode ke clipboard
type GetPrefixResult = { prefix: string; // Prefix path dengan slash di akhir (misal, 'fr/' atau '') localePrefix?: Locale; // Identifier locale tanpa garis miring (misalnya, 'fr' atau undefined)};function getPrefix( locale: Locales, options?: { defaultLocale?: Locales; mode?: "prefix-no-default" | "prefix-all" | "no-prefix" | "search-params"; }): GetPrefixResult;