logologo
Bắt đầu
Hướng dẫn
Phát triển
Plugin
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Bắt đầu
Hướng dẫn
Phát triển
Plugin
API
logologo

Bắt đầu nhanh

Tổng quan phát triển plugin
Viết plugin đầu tiên
Cấu trúc thư mục dự án

Phát triển phía server

Tổng quan
Plugin
Collections (Bảng dữ liệu)
Thao tác Database
Quản lý DataSourceManager
Quản lý ResourceManager
Kiểm soát quyền ACL
Middleware
Cache
Event
Ngữ cảnh yêu cầu (Context)
Script nâng cấp (Migration)
Logger (Nhật ký)
I18n (Quốc tế hóa)
Command (Dòng lệnh)
Quản lý tác vụ định kỳ (CronJobManager)
Test

Phát triển phía client

Tổng quan
Plugin
Ngữ cảnh (Context)
Router
Kiểm soát quyền ACL
Quản lý DataSourceManager
Resource
Request
Styles & Themes
Logger (Nhật ký)
I18n (Quốc tế hóa)
Test

Khác

Hướng dẫn nâng cấp plugin
Danh sách ngôn ngữ
Quản lý phụ thuộc
Build
Previous PageLogger (Nhật ký)
Next PageTest
TIP

Tài liệu này được dịch bởi AI. Đối với bất kỳ thông tin không chính xác nào, vui lòng tham khảo phiên bản tiếng Anh

#I18n (Quốc tế hóa)

Các plugin của NocoBase hỗ trợ quốc tế hóa đa ngôn ngữ (i18n) cho cả giao diện người dùng (frontend) và phía máy chủ (backend). Với một cơ chế thống nhất, bạn có thể dễ dàng triển khai nội dung đa ngôn ngữ trong các plugin.

#Quản lý tệp đa ngôn ngữ

Các tệp đa ngôn ngữ của plugin được lưu trữ thống nhất trong thư mục src/locale. Bạn nên đặt tên các tệp này theo ngôn ngữ, ví dụ:

|- /plugin-hello
  |- /src
    |- /locale
      |- en-US.json   # Ngôn ngữ tiếng Anh
      |- zh-CN.json   # Ngôn ngữ tiếng Trung

Mỗi tệp ngôn ngữ xuất một đối tượng JSON chứa tất cả các mục dịch cho ngôn ngữ đó, ví dụ:

// zh-CN.json
{
  "Hello": "你好",
  "World": "世界",
  "Enter your name": "请输入你的名字",
  "Your name is {{name}}": "你的名字是 {{name}}"
}
// en-US.json
{
  "Hello": "Hello",
  "World": "World",
  "Enter your name": "Enter your name",
  "Your name is {{name}}": "Your name is {{name}}"
}

Khi thêm tệp ngôn ngữ lần đầu, bạn cần khởi động lại ứng dụng để các thay đổi có hiệu lực. Bạn có thể kiểm tra xem các mục dịch đã có hiệu lực hay chưa thông qua API:
http://localhost:13000/api/app:getLang?locale=zh-CN

#Các API liên quan đến i18n

#ctx.i18n

#ctx.t(text, options)

#plugin.t()

#useT()

#tExpr(text)

#useTranslation(ns)

#withTranslation(ns)