i18n Internasionalisasi
Plugin NocoBase mendukung internasionalisasi multibahasa frontend-backend (i18n), Anda dapat mengimplementasikan konten multibahasa di plugin melalui mekanisme terpadu.
Manajemen File Multibahasa
File multibahasa plugin disimpan secara terpadu di direktori src/locale, dinamai berdasarkan bahasa, misalnya:
Setiap file bahasa mengekspor sebuah object JSON yang berisi semua entri terjemahan untuk bahasa tersebut, misalnya:
Pertama kali menambahkan file bahasa perlu restart aplikasi agar berlaku. Anda dapat memvalidasi apakah entri terjemahan berlaku melalui interface: http://localhost:13000/api/app:getLang?locale=zh-CN
Instance i18n Global
app.i18n adalah instance i18n global, cocok untuk skenario CLI atau plugin global. Anda dapat menggabungkannya dengan inquirer untuk mengimplementasikan interaksi command line:
app.i18n.t(text, options)digunakan untuk menerjemahkan teks dan mendukung variabel template.
i18n Context Request
ctx.i18n setiap request adalah instance clone dari i18n global, merespons informasi multibahasa secara independen berdasarkan bahasa client.
Mengatur Bahasa Client
- Query String:
- Request Header (direkomendasikan):
Menggunakan di Middleware
Mengakses http://localhost:13000/api/test-i18n?locale=zh-CN akan mengembalikan 你好.
i18n Internal Plugin
Di dalam plugin, Anda dapat menggunakan plugin.t(key, options) secara langsung untuk mendapatkan terjemahan:
plugin.t(text)setara denganctx.t(text, { ns })
Tautan Terkait
- i18n Internasionalisasi Client — Cara menulis file terjemahan client, penggunaan useT, tExpr
- Daftar Bahasa — Daftar lengkap kode bahasa yang didukung NocoBase

