Ajukan pertanyaan Anda dan dapatkan ringkasan dokumen dengan merujuk halaman ini dan penyedia AI pilihan Anda
Riwayat Versi
- "Inisialisasi dokumentasi middleware intlayer"v9.5.519/9/2026
Konten halaman ini diterjemahkan menggunakan AI.
Lihat versi terakhir dari konten aslinya dalam bahasa InggrisJika Anda memiliki ide untuk meningkatkan dokumentasi ini, silakan berkontribusi dengan mengajukan pull request di GitHub.
Tautan GitHub ke dokumentasiSalin Markdown dokumentasi ke clipboard
Dokumentasi Middleware intlayer untuk Remix 3
Middleware intlayer untuk Remix 3 mengelola lapisan internasionalisasi di seluruh aplikasi Anda. Dibangun di atas standar web (Request dan Response), middleware ini menangani routing locale (pengalihan dan penulisan ulang internal), mendeteksi locale permintaan, menyimpannya ke cookie dan header, serta membentuk scope AsyncLocalStorage sehingga handler dan komponen di hilir dapat mengakses terjemahan tanpa prop drilling.
Penggunaan
Daftarkan middleware intlayer saat menginisialisasi router Remix 3 Anda:
Salin kode ke clipboard
Deskripsi
Middleware intlayer melakukan tugas-tugas berikut:
- Persiapan Kamus: Menjalankan
prepareIntlayersaat startup untuk memastikan semua kamus yang dihasilkan telah dibangun dan tersedia. - Routing Locale: Mengevaluasi permintaan berdasarkan strategi routing yang dikonfigurasi (
prefix_always,prefix_as_needed,no_prefix):- Pengalihan: Jika pengguna mengunjungi
/aboutdan harus diarahkan ke awalan locale (misalnya/fr/about), middleware mengeluarkan respons pengalihan dengan headerlocationdanSet-Cookieyang sesuai. - Penulisan Ulang Internal: Saat pengguna mengakses
/fr/about, URL ditulis ulang secara internal sehingga handler rute Anda cocok dengan/about, sementara locale yang diselesaikan ditangkap sebagaifr. - Alias URL Terlokalisasi: Mematuhi aturan penulisan ulang URL yang didefinisikan di
intlayer.config.ts(misalnya menulis ulang/fr/aboutmenjadi/fr/a-propos).
- Pengalihan: Jika pengguna mengunjungi
- Resolusi Locale: Mendeteksi locale aktif berdasarkan awalan URL, cookie yang tersimpan, header kustom, atau preferensi browser
Accept-Language. - Injeksi Konteks:
- Melampirkan
IntlayerState(locale,defaultLocale,availableLocales) keRequestContextRemix di bawah kunciIntlayerdancontext.intlayer. - Menjalankan sisa permintaan di dalam scope
AsyncLocalStorage(requestStorage), sehinggauseIntlayer,useDictionary, danuseLocaledapat dipanggil dengan rapi di handler, view, dan komponen.
- Melampirkan
- Persistensi: Melampirkan header dan cookie locale keluar ke respons HTTP akhir untuk mempertahankan preferensi pengguna.
Parameter
Fungsi intlayer menerima IntlayerMiddlewareOptions opsional:
Salin kode ke clipboard
Mengakses Konteks Secara Langsung
Selain menggunakan hook, Anda dapat mengakses IntlayerState yang telah ditentukan langsung dari konteks permintaan Remix:
Salin kode ke clipboard
