Skip to main content

Chuỗi dự phòng locale cho mọi framework

Hầu hết framework i18n bỏ qua hoàn toàn locale cha. Khi thiếu khóa, người dùng pt-BR sẽ thấy tiếng Anh thay vì bản dịch pt-PT hoàn chỉnh. Các thư viện locale-chain khắc phục vấn đề này bằng chuỗi dự phòng hợp nhất sâu có thể cấu hình.

Vấn đề: Framework bỏ qua locale cha

Bạn phát hành bản dịch pt-PT gồm 2.000 khóa. Tệp pt-BR có 200 giá trị ghi đè theo khu vực. Vậy 1.800 khóa giống nhau sẽ ra sao? Hầu hết framework hiển thị locale dự phòng (thường là tiếng Anh) thay vì locale cha. Người dùng Brazil sẽ thấy tiếng Bồ Đào Nha lẫn tiếng Anh — một trải nghiệm chắp vá khiến ứng dụng có vẻ chưa hoàn thiện.

Đây không phải trường hợp hiếm gặp. Mọi ứng dụng có biến thể theo khu vực (zh-Hans/zh-Hant, es/es-419, en-US/en-GB, fr/fr-CA) đều gặp vấn đề này. Hành vi mặc định của gần như mọi framework i18n đều không phù hợp với locale theo khu vực.

Cơ chế dự phòng hợp nhất sâu

Khi người dùng chọn pt-BR, thư viện sẽ tải thông báo từ từng locale trong chuỗi dự phòng rồi hợp nhất sâu theo thứ tự ưu tiên. Khóa theo khu vực ghi đè khóa cha. Khóa cha điền phần còn thiếu. Kết quả là một bộ thông báo đầy đủ, không thiếu bản dịch nào.

Ví dụ: pt-BR định nghĩa 'cart.checkout' là 'Finalizar compra'. pt-PT định nghĩa 'cart.checkout' là 'Concluir compra' và 'cart.empty' là 'Carrinho vazio'. Kết quả hợp nhất cho pt-BR dùng nội dung thanh toán của pt-BR nhưng dự phòng về pt-PT cho thông báo giỏ hàng trống thay vì hiển thị tiếng Anh.

Hỗ trợ 17 framework

Mỗi framework có một thư viện locale-chain riêng, tích hợp trực tiếp với hệ thống i18n của framework đó. Hãy cài đặt gói và cấu hình chuỗi để hệ thống tự động hợp nhất sâu khi tải.

Dùng thử i18n Agent ngay

Thả tệp bản dịch của bạn vào đây

JSON, YAML, PO, XML, CSV, Markdown, Properties

hoặc nhấp để duyệt

Ngôn ngữ đích

Không cần đăng kýBáo giá tức thì

Câu hỏi thường gặp về dự phòng locale