Magic Translate vs. Angular i18n
Aplikacje Angular są zwykle tłumaczone za pomocą jednego z trzech narzędzi: wbudowanych w Angular i18n, ngx-translate lub Transloco. Wszystkie trzy wymagają tłumaczeń dla każdego języka przed wydaniem aplikacji. Magic Translate tłumaczy tekst w szablonach bezpośrednio, bez plików tłumaczeń.
Na pierwszy rzut oka
| Magic Translate | Angular i18n | ngx-translate i Transloco | |
|---|---|---|---|
| Jak piszesz tekst | Twoje własne słowa, w <t> lub t pipe | Własne słowa oznaczone literą i18n | Klucz do każdej wiadomości |
| Tłumaczenia | Tłumaczenie AI, tworzone automatycznie | Wyodrębnione do plików XLIFF i przetłumaczone przez Ciebie | Pliki JSON według języka, napisane przez Ciebie |
| Przełączanie języków | W czasie wykonywania | Jedna kompilacja na język | W czasie wykonywania |
| Renderowanie serwera | Tak, przetłumaczone w czasie kompilacji z prerenderowaniem | tak | Tak, z dodatkową konfiguracją |
| Cena | Bezpłatny plan, następnie plany miesięczne oparte na użyciu | Wolny, część Angular | Otwarte źródło i za darmo |
Czym różni się kod
Dzięki wbudowanemu i18n w Angular zaznaczasz tekst, wyodrębniasz go i tłumaczysz wyodrębniony plik dla każdego języka:
<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
W przypadku ngx-translate lub Transloco każda wiadomość ma klucz, a jego tłumaczenia są dostępne w plikach JSON:
<!-- ngx-translate --><h2>{{ 'cart.title' | translate }}</h2><!-- Transloco --><h2>{{ 'cart.title' | transloco }}</h2>
Z Magic Translate piszesz tekst i uwalniasz aplikację:
<h2><t>Your shopping cart</t></h2><input [placeholder]="'Search products' | t" />
Kiedy wybrać Magic Translate
- Potrzebujesz aplikacji Angular w wielu językach bez wyodrębniania, tłumaczenia i ładowania plików.
- Chcesz, aby użytkownicy przełączali się językami bez ponownego ładowania aplikacji lub budowania jej raz na język.
- Twój tekst często się zmienia, i chcesz, aby każdy język był na bieżąco.
Kiedy wybrać Angular i18n, ngx-translate lub Transloco
- Cały tekst musi zostać przetłumaczony lub sprawdzony przez osobę.
- Potrzebujesz dokładnej kontroli nad liczbami mnogowymi i sformułowaniami w każdym języku.
- Potrzebujesz darmowego rozwiązania bez zewnętrznej usługi.
Przeniesienie do Magic Translate
Możesz przełączać jeden komponent na raz. Zastąp klucz lub atrybut i18n tekstem w języku angielskim w <t> lub użyj t pipe dla atrybutów. Przewodnik Angular pokazuje konfigurację.
Gotowy do wypróbowania? Postępuj zgodnie z instrukcjami dotyczącymi rozpoczę cia pracy, aby przetłumaczyć pierwszy komponent w pięć minut.