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
- "Riwayat awal"v8.0.426/1/2026
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
Terjemahkan aplikasi Analog (Angular) Anda menggunakan Intlayer | Internasionalisasi (i18n)
Daftar Isi
Mengapa Intlayer dibandingkan alternatif?
Dibandingkan dengan solusi utama seperti ngx-translate atau angular-l10n, Intlayer adalah solusi yang hadir dengan pengoptimalan terintegrasi seperti:
Intlayer dioptimalkan untuk bekerja sempurna dengan Analog 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 Menyiapkan Intlayer dalam Aplikasi Analog
Lihat Templat Aplikasi di GitHub.
Instal Dependensi
Instal paket-paket yang diperlukan menggunakan npm:
bashSalin kodeSalin kode ke clipboard
npm install intlayer angular-intlayer vite-intlayernpx intlayer initintlayer
Paket inti yang menyediakan alat internasionalisasi untuk manajemen konfigurasi, terjemahan, deklarasi konten, transpilasi, dan perintah CLI.
angular-intlayer Paket yang mengintegrasikan Intlayer dengan aplikasi Angular. Ini menyediakan penyedia konteks dan hook untuk internasionalisasi Angular.
vite-intlayer Paket yang mengintegrasikan Intlayer dengan Vite. Ini menyediakan plugin untuk menangani file deklarasi konten dan menyiapkan alias untuk performa optimal.
Konfigurasi Proyek Anda
Buat file konfigurasi untuk mengonfigurasi bahasa aplikasi Anda:
intlayer.config.tsSalin kodeSalin kode ke clipboard
import { Locales, type IntlayerConfig } from "intlayer"; const config: IntlayerConfig = { internationalization: { locales: [ Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH, // Bahasa lainnya ], defaultLocale: Locales.ENGLISH, }, }; export default config;Melalui file konfigurasi ini, Anda dapat menyiapkan URL yang dilokalisasi, pengalihan middleware, nama cookie, lokasi dan ekstensi deklarasi konten Anda, menonaktifkan log Intlayer di konsol, dan banyak lagi. Untuk daftar lengkap parameter yang tersedia, lihat dokumentasi konfigurasi.
Integrasikan Intlayer dalam Konfigurasi Vite Anda
Untuk mengintegrasikan Intlayer dengan Analog, Anda perlu menggunakan plugin
vite-intlayer.Modifikasi file
vite.config.tsAnda:vite.config.tsSalin kodeSalin kode ke clipboard
import { defineConfig } from "vite";import { intlayer } from "vite-intlayer";import analog from "@analogjs/platform";// https://vitejs.dev/config/export default defineConfig(() => ({ plugins: [ analog(), intlayer(), // Tambahkan plugin Intlayer ],}));Plugin
intlayer()mengonfigurasi Vite dengan Intlayer. Ini menangani file deklarasi konten dan menyiapkan alias untuk performa optimal.Deklarasikan Konten Anda
Buat dan kelola deklarasi konten Anda untuk menyimpan terjemahan:
Deklarasi konten Anda dapat didefinisikan di mana saja dalam aplikasi Anda selama disertakan ke dalam direktori
contentDir(secara default,./src). Dan cocok dengan ekstensi file deklarasi konten (secara default,.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}).Untuk detail lebih lanjut, lihat dokumentasi deklarasi konten.
Gunakan Intlayer dalam Kode Anda
Untuk menggunakan fitur internasionalisasi Intlayer di seluruh aplikasi Analog Anda, Anda perlu menyediakan Intlayer dalam konfigurasi aplikasi Anda.
src/app/app.config.tsSalin kodeSalin kode ke clipboard
import { ApplicationConfig } from "@angular/core";import { provideIntlayer } from "angular-intlayer";export const appConfig: ApplicationConfig = { providers: [ provideIntlayer(), // Tambahkan penyedia Intlayer di sini ],};Kemudian, Anda dapat menggunakan fungsi
useIntlayerdi dalam komponen apa pun.src/app/pages/index.page.tsSalin kodeSalin kode ke clipboard
import { Component } from "@angular/core";import { useIntlayer } from "angular-intlayer";@Component({ selector: "app-home", standalone: true, template: ` <div class="content"> <h1>{{ content().title }}</h1> <p>{{ content().congratulations }}</p> </div> `,})export default class HomeComponent { content = useIntlayer("app");}Konten Intlayer dikembalikan sebagai
Signal, jadi Anda mengakses nilainya dengan memanggil sinyal tersebut:content().title.Ubah bahasa konten Anda
OpsionalUntuk mengubah bahasa konten Anda, Anda dapat menggunakan fungsi
setLocaleyang disediakan oleh fungsiuseLocale. Ini memungkinkan Anda untuk mengatur lokal aplikasi dan memperbarui konten yang sesuai.Buat komponen untuk beralih antar bahasa:
src/app/locale-switcher.component.tsSalin kodeSalin kode ke clipboard
import { Component } from "@angular/core";import { CommonModule } from "@angular/common";import { useLocale } from "angular-intlayer";@Component({ selector: "app-locale-switcher", standalone: true, imports: [CommonModule], template: ` <div class="locale-switcher"> <select [value]="locale()" (change)="setLocale($any($event.target).value)" > @for (loc of availableLocales; track loc) { <option [value]="loc">{{ loc }}</option> } </select> </div> `,})export class LocaleSwitcherComponent { localeCtx = useLocale(); locale = this.localeCtx.locale; availableLocales = this.localeCtx.availableLocales; setLocale = this.localeCtx.setLocale;}Kemudian, gunakan komponen ini di halaman Anda:
src/app/pages/index.page.tsSalin kodeSalin kode ke clipboard
import { Component } from "@angular/core";import { useIntlayer } from "angular-intlayer";import { LocaleSwitcherComponent } from "../locale-switcher.component";@Component({ selector: "app-home", standalone: true, imports: [LocaleSwitcherComponent], template: ` <app-locale-switcher></app-locale-switcher> <div class="content"> <h1>{{ content().title }}</h1> <p>{{ content().congratulations }}</p> </div> `,})export default class HomeComponent { content = useIntlayer("app");}
Konfigurasi TypeScript
Intlayer menggunakan augmentasi modul untuk mendapatkan manfaat dari TypeScript dan membuat basis kode Anda lebih kuat.


Pastikan konfigurasi TypeScript Anda menyertakan tipe yang dihasilkan secara otomatis.
Salin kode ke clipboard
{ // ... Konfigurasi TypeScript Anda yang sudah ada "include": [ // ... Konfigurasi TypeScript Anda yang sudah ada ".intlayer/**/*.ts", // Sertakan tipe yang dihasilkan secara otomatis ],}Konfigurasi Git
Disarankan untuk mengabaikan file yang dihasilkan oleh Intlayer. Ini memungkinkan Anda untuk menghindari memasukkannya ke dalam repositori Git Anda.
Untuk melakukan ini, Anda dapat menambahkan instruksi berikut ke file .gitignore Anda:
Salin kode ke clipboard
# Abaikan file yang dihasilkan oleh Intlayer.intlayerEkstensi VS Code
Untuk meningkatkan pengalaman pengembangan Anda dengan Intlayer, Anda dapat menginstal Ekstensi VS Code Intlayer resmi.
Instal dari VS Code Marketplace
Ekstensi ini menyediakan:
- Pelengkapan otomatis untuk kunci terjemahan.
- Deteksi kesalahan real-time untuk terjemahan yang hilang.
- Pratinjau sebaris dari konten yang diterjemahkan.
- Tindakan cepat untuk membuat dan memperbarui terjemahan dengan mudah.
Untuk detail lebih lanjut tentang cara menggunakan ekstensi ini, lihat dokumentasi Ekstensi VS Code Intlayer.
Melangkah Lebih Jauh
Untuk melangkah lebih jauh, Anda dapat mengimplementasikan editor visual atau mengeksternalisasi konten Anda menggunakan CMS.