Đặt câu hỏi và nhận tóm tắt tài liệu bằng cách tham chiếu trang này và nhà cung cấp AI bạn chọn
Lịch sử phiên bản
- "Tài liệu ban đầu"v8.0.030/1/2026
Nội dung của trang này đã được dịch bằng AI.
Xem phiên bản mới nhất của nội dung gốc bằng tiếng AnhIf 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
Tài liệu: Hàm t trong adonis-intlayer
Hàm t trong gói adonis-intlayer là tiện ích cốt lõi để cung cấp các phản hồi được bản địa hóa trong ứng dụng AdonisJS của bạn. Nó đơn giản hóa việc quốc tế hóa (i18n) bằng cách tự động chọn nội dung dựa trên ngôn ngữ ưa thích của người dùng.
Tổng quan
Hàm t được sử dụng để định nghĩa và truy xuất bản dịch cho một tập hợp ngôn ngữ nhất định. Nó tự động xác định ngôn ngữ thích hợp để trả về dựa trên cài đặt yêu cầu của khách hàng, chẳng hạn như tiêu đề Accept-Language. Nếu ngôn ngữ ưa thích không có sẵn, nó sẽ tự động chuyển về ngôn ngữ mặc định được chỉ định trong cấu hình của bạn.
Các tính năng chính
- Bản địa hóa động: Tự động chọn bản dịch phù hợp nhất cho khách hàng.
- Chuyển về ngôn ngữ mặc định (Fallback): Chuyển về ngôn ngữ mặc định nếu ngôn ngữ ưa thích của khách hàng không có sẵn, đảm bảo tính liên tục trong trải nghiệm người dùng.
- Ngữ cảnh bất đồng bộ: Hoạt động liền mạch trong vòng đời yêu cầu AdonisJS bằng cách sử dụng Async Local Storage.
- Hỗ trợ TypeScript: Áp dụng an toàn kiểu cho các bản dịch của bạn.
Chữ ký hàm
Sao chép mã vào clipboard
t(translations: Record<string, any>): any;Tham số
translations: Một đối tượng trong đó các khóa là mã ngôn ngữ (ví dụ:en,fr,es) và các giá trị là nội dung dịch tương ứng.
Trả về
- Nội dung đại diện cho ngôn ngữ ưa thích của khách hàng.
Tải Middleware
Để đảm bảo rằng hàm t hoạt động chính xác, bạn phải đăng ký middleware intlayer trong ứng dụng AdonisJS của mình.
Sao chép mã vào clipboard
router.use([() => import("adonis-intlayer/middleware")]);Ví dụ sử dụng
Ví dụ cơ bản
Sao chép mã vào clipboard
import router from "@adonisjs/core/services/router";import { t } from "adonis-intlayer";router.get("/", async () => { return t({ en: "Welcome!", fr: "Bienvenue!", es: "¡Bienvenido!", });});Sử dụng trong Controller
Sao chép mã vào clipboard
import type { HttpContext } from "@adonisjs/core/http";import { t } from "adonis-intlayer";export default class ExampleController { async index({ response }: HttpContext) { return response.send( t({ en: "Hello from controller", fr: "Bonjour từ controller", }) ); }}Chủ đề nâng cao
Cơ chế Fallback
Nếu ngôn ngữ ưa thích không có sẵn, hàm t sẽ chuyển về ngôn ngữ mặc định được xác định trong intlayer.config.ts.
Sao chép mã vào clipboard
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { internationalization: { locales: [ Locales.ENGLISH, Locales.RUSSIAN, Locales.JAPANESE, Locales.FRENCH, Locales.KOREAN, Locales.CHINESE, Locales.SPANISH, Locales.GERMAN, Locales.ARABIC, Locales.ITALIAN, Locales.ENGLISH_UNITED_KINGDOM, Locales.PORTUGUESE, Locales.HINDI, Locales.TURKISH, Locales.POLISH, Locales.INDONESIAN, Locales.VIETNAMESE, Locales.UKRAINIAN, ], defaultLocale: Locales.ENGLISH, },};export default config;Tích hợp TypeScript
Hàm t an toàn về kiểu khi được sử dụng với các từ điển đã định nghĩa. Để biết thêm chi tiết, hãy tham khảo tài liệu TypeScript.