Ajukan pertanyaan Anda dan dapatkan ringkasan dokumen dengan merujuk halaman ini dan penyedia AI pilihan Anda
Riwayat Versi
- "Perbarui penggunaan API useIntlayer Solid ke akses properti langsung"v8.9.04/5/2026
- "Tambahkan perintah init"v7.5.930/12/2025
- "Inisialisasi riwayat"v7.1.1020/11/2025
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
Terjemahkan situs web SvelteKit Anda menggunakan Intlayer | Internasionalisasi (i18n)
Daftar Isi
Mengapa Intlayer dibandingkan alternatif?
Dibandingkan dengan solusi utama seperti svelte-i18n atau i18next, Intlayer adalah solusi yang hadir dengan pengoptimalan terintegrasi seperti:
Intlayer dioptimalkan untuk bekerja sempurna dengan SvelteKit dengan menawarkan perutean multibahasa, dukungan SSR, dan semua fitur yang diperlukan untuk penskalaan internasionalisasi (i18n).
Daripada memuat file JSON berukuran besar ke halaman Anda, muat saja konten yang diperlukan. Intlayer membantu mengurangi ukuran bundle dan halaman Anda hingga 50%.
Mencakup konten aplikasi Anda memfasilitasi pemeliharaan untuk aplikasi berskala besar. Anda dapat menduplikasi atau menghapus satu folder fitur tanpa beban mental untuk meninjau seluruh basis kode konten Anda. Selain itu, Intlayer diketik sepenuhnya untuk memastikan keakuratan konten Anda.
Menempatkan konten bersama mengurangi konteks yang diperlukan dengan Model Bahasa Besar (LLM). Intlayer juga dilengkapi dengan serangkaian alat, seperti CLI untuk menguji terjemahan yang hilang,LSP, MCP, dan agent skill, untuk menjadikan pengalaman pengembang (DX) lebih lancar bagi agen AI.
Gunakan otomatisasi untuk menerjemahkan dalam saluran CI/CD Anda menggunakan LLM pilihan Anda dengan biaya penyedia AI Anda. Intlayer juga menawarkan compiler untuk mengotomatiskan ekstraksi konten, serta platform web untuk membantu menerjemahkan di latar belakang.
Menghubungkan file JSON berukuran besar ke komponen dapat menyebabkan masalah kinerja dan reaktivitas. Intlayer mengoptimalkan pemuatan konten Anda pada waktu pembuatan.
Lebih dari sekedar solusi i18n, Intlayer menyediakan editor visual yang dihosting sendiri dan CMS lengkap untuk membantu Anda mengelola konten multibahasa secara real-time, membuat kolaborasi dengan penerjemah, copywriter, dan anggota tim lainnya menjadi lancar. Konten dapat disimpan secara lokal dan/atau jarak jauh.
Panduan Langkah demi Langkah untuk Mengatur Intlayer dalam Aplikasi SvelteKit
Untuk memulai, buat proyek SvelteKit baru. Berikut adalah struktur akhir yang akan kita buat:
Salin kode ke clipboard
Instalasi Dependencies
Instal paket yang diperlukan menggunakan npm:
bashSalin kodeSalin kode ke clipboard
- intlayer: Paket inti i18n.
- svelte-intlayer: Menyediakan context providers dan stores untuk Svelte/SvelteKit.
- vite-intlayer: Plugin Vite untuk mengintegrasikan deklarasi konten dengan proses build.
Konfigurasi proyek Anda
Buat file konfigurasi di root proyek Anda:
intlayer.config.tsSalin kodeSalin kode ke clipboard
Integrasikan Intlayer dalam Konfigurasi Vite Anda
Perbarui
vite.config.tsAnda untuk menyertakan plugin Intlayer. Plugin ini menangani transpile file konten Anda.vite.config.tsSalin kodeSalin kode ke clipboard
Deklarasikan Konten Anda
Buat file deklarasi konten Anda di mana saja dalam folder
srcAnda (misalnya,src/lib/contentatau di samping komponen Anda). File-file ini mendefinisikan konten yang dapat diterjemahkan untuk aplikasi Anda menggunakan fungsit()untuk setiap locale.Gunakan Intlayer dalam Komponen Anda
Sekarang Anda dapat menggunakan fungsi
useIntlayerdi komponen Svelte mana pun. Fungsi ini mengembalikan store reaktif yang secara otomatis diperbarui saat locale berubah. Fungsi ini akan secara otomatis menghormati locale saat ini (baik selama SSR maupun navigasi sisi klien).Catatan:
useIntlayermengembalikan store Svelte, jadi Anda perlu menggunakan prefix `--- createdAt: 2025-11-20 updatedAt: 2026-05-31 title: Cara menerjemahkan aplikasi SvelteKit Anda – panduan i18n 2026 description: Temukan cara membuat situs web SvelteKit Anda menjadi multibahasa. Ikuti dokumentasi untuk melakukan internasionalisasi (i18n) dan menerjemahkannya menggunakan Server-Side Rendering (SSR). keywords:- Internasionalisasi
- Dokumentasi
- Intlayer
- SvelteKit
- JavaScript
- SSR slugs:
- doc
- environment
- sveltekit applicationTemplate: https://github.com/aymericzip/intlayer-sveltekit-template history:
- version: 7.1.10 date: 2025-11-20 changes: Inisialisasi riwayat
Terjemahkan situs web SvelteKit Anda menggunakan Intlayer | Internasionalisasi (i18n)
Daftar Isi
Apa itu Intlayer?
Intlayer adalah perpustakaan internasionalisasi (i18n) sumber terbuka yang inovatif, dirancang untuk menyederhanakan dukungan multibahasa dalam aplikasi web modern. Ini bekerja mulus dengan kemampuan Server-Side Rendering (SSR) dari SvelteKit.
Dengan Intlayer, Anda dapat:
- Mengelola terjemahan dengan mudah menggunakan kamus deklaratif di tingkat komponen.
- Melokalkan metadata, rute, dan konten secara dinamis.
- Memastikan dukungan TypeScript dengan tipe yang dihasilkan secara otomatis.
- Memanfaatkan SSR SvelteKit untuk internasionalisasi yang ramah SEO.
Panduan Langkah demi Langkah untuk Mengatur Intlayer dalam Aplikasi SvelteKit
Untuk memulai, buat proyek SvelteKit baru. Berikut adalah struktur akhir yang akan kita buat:
Salin kode ke clipboard
Instalasi Dependencies
Instal paket yang diperlukan menggunakan npm:
bashSalin kodeSalin kode ke clipboard
- intlayer: Paket inti i18n.
- svelte-intlayer: Menyediakan context providers dan stores untuk Svelte/SvelteKit.
- vite-intlayer: Plugin Vite untuk mengintegrasikan deklarasi konten dengan proses build.
Konfigurasi proyek Anda
Buat file konfigurasi di root proyek Anda:
intlayer.config.tsSalin kodeSalin kode ke clipboard
Integrasikan Intlayer dalam Konfigurasi Vite Anda
Perbarui
vite.config.tsAnda untuk menyertakan plugin Intlayer. Plugin ini menangani transpile file konten Anda.vite.config.tsSalin kodeSalin kode ke clipboard
Deklarasikan Konten Anda
Buat file deklarasi konten Anda di mana saja dalam folder
srcAnda (misalnya,src/lib/contentatau di samping komponen Anda). File-file ini mendefinisikan konten yang dapat diterjemahkan untuk aplikasi Anda menggunakan fungsit()untuk setiap locale.Gunakan Intlayer dalam Komponen Anda
untuk mengakses nilai reaktifnya (misalnya,
$content.title).src/lib/components/Component.svelteSalin kodeSalin kode ke clipboard
Atur routing
OpsionalLangkah-langkah berikut menunjukkan cara mengatur routing berbasis locale di SvelteKit. Ini memungkinkan URL Anda menyertakan prefix locale (misalnya,
/en/about,/fr/about) untuk SEO yang lebih baik dan pengalaman pengguna yang lebih baik.bashSalin kodeSalin kode ke clipboard
Tangani Deteksi Locale di Server
Di SvelteKit, server perlu mengetahui locale pengguna untuk merender konten yang benar selama SSR. Kita menggunakan
hooks.server.tsuntuk mendeteksi locale dari URL atau cookie.Buat atau modifikasi
src/hooks.server.ts:src/hooks.server.tsSalin kodeSalin kode ke clipboard
Kemudian, buat helper untuk mendapatkan locale pengguna dari event request:
src/lib/getLocale.tsSalin kodeSalin kode ke clipboard
getLocaleFromStorageakan memeriksa locale dari header atau cookie tergantung pada konfigurasi Anda. Lihat Configuration untuk detail lebih lanjut.Fungsi
localeDetectorakan memproses headerAccept-Languagedan mengembalikan kecocokan terbaik.Jika locale tidak dikonfigurasi, kita ingin mengembalikan error 404. Untuk mempermudah, kita dapat membuat fungsi
matchuntuk memeriksa apakah locale valid:/src/params/locale.tsSalin kodeSalin kode ke clipboard
Catatan: Pastikan
src/app.d.tsAnda menyertakan definisi locale:typescriptSalin kodeSalin kode ke clipboard
Untuk file
+layout.svelte, kita dapat menghapus semuanya, agar hanya menyimpan konten statis yang tidak terkait dengan i18n:src/+layout.svelteSalin kodeSalin kode ke clipboard
Kemudian, buat halaman dan layout baru di bawah grup
[[locale=locale]]:src/routes/[[locale=locale]]/+layout.tsSalin kodeSalin kode ke clipboard
src/routes/[[locale=locale]]/+layout.svelteSalin kodeSalin kode ke clipboard
src/routes/[[locale=locale]]/+page.tsSalin kodeSalin kode ke clipboard
src/routes/[[locale=locale]]/+page.svelteSalin kodeSalin kode ke clipboard
Tautan Internasionalisasi
OpsionalUntuk SEO, disarankan untuk menambahkan prefix locale pada rute Anda (misalnya,
/en/about,/fr/about). Komponen ini secara otomatis menambahkan prefix locale saat ini pada setiap tautan.src/lib/components/LocalizedLink.svelteSalin kodeSalin kode ke clipboard
Jika Anda menggunakan
gotodari SvelteKit, Anda dapat menggunakan logika yang sama dengangetLocalizedUrluntuk menavigasi ke URL yang sudah dilokalkan:typescriptSalin kodeSalin kode ke clipboard
Pengalih Bahasa
OpsionalUntuk memungkinkan pengguna mengganti bahasa, perbarui URL.
src/lib/components/LanguageSwitcher.svelteSalin kodeSalin kode ke clipboard
Tambahkan proxy backend
OpsionalUntuk menambahkan proxy backend ke aplikasi SvelteKit Anda, Anda dapat menggunakan fungsi
intlayerProxyyang disediakan oleh pluginvite-intlayer. Plugin ini akan secara otomatis mendeteksi locale terbaik untuk pengguna berdasarkan URL, cookie, dan preferensi bahasa browser.vite.config.tsSalin kodeSalin kode ke clipboard
Mengatur editor / CMS intlayer
OpsionalUntuk mengatur editor intlayer, Anda harus mengikuti dokumentasi editor intlayer.
Untuk mengatur CMS intlayer, Anda harus mengikuti dokumentasi CMS intlayer.
Untuk dapat memvisualisasikan selector editor intlayer, Anda harus menggunakan sintaks komponen dalam konten intlayer Anda.
Component.svelteSalin kodeSalin kode ke clipboard
Ekstrak konten komponen Anda
OpsionalJika Anda memiliki basis kode yang ada, mengubah ribuan file bisa memakan waktu lama.
Untuk memudahkan proses ini, Intlayer mengusulkan compiler / extractor untuk mengubah komponen Anda dan mengekstrak kontennya.
Untuk mengaturnya, Anda dapat menambahkan bagian
compilerdi fileintlayer.config.tsAnda:intlayer.config.tsSalin kodeSalin kode ke clipboard
import { type IntlayerConfig } from "intlayer"; const config: IntlayerConfig = { // ... Sisa konfigurasi Anda compiler: { /** * Menunjukkan apakah compiler harus diaktifkan. */ enabled: true, /** * Menentukan jalur file output */ output: ({ fileName, extension }) => `./${fileName}${extension}`, /** * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus. */ saveComponents: false, /** * Prefiks kunci kamus */ dictionaryKeyPrefix: "", }, }; export default config;Jalankan extractor untuk mengubah komponen Anda dan mengekstrak kontennya
bashSalin kodeSalin kode ke clipboard
Konfigurasi Git
Disarankan untuk mengabaikan file-file yang dihasilkan oleh Intlayer.
Salin kode ke clipboard
Melangkah Lebih Jauh
- Editor Visual: Integrasikan Intlayer Visual Editor untuk mengedit terjemahan langsung dari UI.
- CMS: Eksternalisasi manajemen konten Anda menggunakan Intlayer CMS.