Tài liệu

Magic Translate vs. Angular i18n

Các ứng dụng Angular thường được dịch bằng một trong ba công cụ: i18n, ngx-translate hoặc Transloco tích hợp sẵn của Angular. Cả ba yêu cầu bản dịch cho mỗi ngôn ngữ trước khi bạn phát hành ứng dụng của mình. Magic Translate dịch văn bản trong mẫu của bạn trực tiếp, không cần tệp dịch.

Sơ lược

Magic TranslateAngular i18nngx-translate và Transloco
Cách bạn viết văn bảnLời nói của riêng bạn, trong <t> hoặc t pipeLời nói của riêng bạn, được đánh dấu bằng i18nMột chìa khóa cho mỗi tin nhắn
Bản dịchDịch AI, được tạo tự độngTrích xuất thành tệp XLIFF và được dịch bởi bạnCác tệp JSON cho mỗi ngôn ngữ, được viết bởi bạn
Chuyển đổi ngôn ngữKhi chạyMột bản dựng cho mỗi ngôn ngữKhi chạy
Kết xuất máy chủCó, được dịch tại thời điểm xây dựng với cài đặt trướcVângCó, với thiết lập bổ sung
GiáGói miễn phí, sau đó gói hàng tháng dựa trên mức sử dụngMiễn phí, một phần của AngularMã nguồn mở và miễn phí

Mã khác nhau như thế nào

Với i18n tích hợp sẵn của Angular, bạn đánh dấu văn bản, giải nén nó và dịch tệp đã trích xuất cho mọi ngôn ngữ:

<h2 i18n>Your shopping cart</h2>
ng extract-i18n
# then translate messages.xlf into messages.de.xlf, messages.fr.xlf, …
# and build the app once per language

Với ngx-translate hoặc Transloco, mỗi thư có một khóa và bản dịch của nó tồn tại trong các tệp JSON:

<!-- ngx-translate -->
<h2>{{ 'cart.title' | translate }}</h2>
<!-- Transloco -->
<h2>{{ 'cart.title' | transloco }}</h2>

Với Magic Translate, bạn viết văn bản và phát hành ứng dụng của mình:

<h2><t>Your shopping cart</t></h2>
<input [placeholder]="'Search products' | t" />

Khi nào nên chọn Magic Translate

  • Bạn muốn ứng dụng Angular của mình bằng nhiều ngôn ngữ mà không cần trích xuất, dịch và tải tệp.
  • Bạn muốn người dùng chuyển đổi ngôn ngữ mà không cần tải lại ứng dụng hoặc xây dựng ứng dụng một lần cho mỗi ngôn ngữ.
  • Văn bản của bạn thay đổi thường xuyên và bạn muốn mọi ngôn ngữ được cập nhật.

Khi nào nên chọn Angular i18n, ngx-translate hoặc Transloco

  • Tất cả văn bản phải được dịch hoặc xem xét bởi một người.
  • Bạn cần kiểm soát chính xác số nhiều và từ ngữ trong mỗi ngôn ngữ.
  • Bạn muốn một giải pháp miễn phí mà không có dịch vụ bên ngoài.

Chuyển đến Magic Translate

Bạn có thể chuyển đổi một thành phần tại một thời điểm. Thay thế khóa hoặc thuộc tính i18n bằng văn bản tiếng Anh trong <t> hoặc sử dụng t pipe cho các thuộc tính. Hướng dẫn Angular hiển thị thiết lập.

Sẵn sàng để thử nó? Làm theo hướng dẫn bắt đầu để dịch thành phần đầu tiên của bạn trong năm phút.