Magic Translate vs. vue-i18n
vue-i18n to standardowa biblioteka i18n dla Vue, a @nuxtjs/i18n opiera się na niej dla Nuxt. Podobnie jak większość bibliotek i18n, używa klucza dla każdej wiadomości i zestawu wiadomości na język. Magic Translate tłumaczy tekst w szablonach Vue bezpośrednio, bez kluczy i plików wiadomości.
Na pierwszy rzut oka
| Magic Translate | vue-i18n | |
|---|---|---|
| Jak piszesz tekst | Twoje własne słowa, owinięte w <T> | Klucz do każdej wiadomości, taki jak $t('cart.title') |
| Tłumaczenia | Tłumaczenie AI, tworzone automatycznie | Ty lub Twoi tłumacze piszesz je |
| Pliki wiadomości | Żaden | Jeden zestaw wiadomości na język |
| Nowe języki | Zmień ustawienie language | Przetłumacz każdą wiadomość na nowy język |
| Przełączanie języków | W czasie wykonywania, z useLanguageSwitcher | W czasie wykonywania, zmieniając ustawienia regionalne |
| Wielorakie i formatowanie | Przetłumaczone jako część zdania | Wbudowany, z regułami liczby mnogiej oraz formatowaniem daty i liczb |
| Cena | Bezpłatny plan, następnie plany miesięczne oparte na użyciu | Otwarte źródło i za darmo |
Czym różni się kod
Za pomocą vue-i18n definiujesz wiadomości dla każdego języka i odwołujesz się do nich według klucza:
// i18n.tsimport { createI18n } from 'vue-i18n';export const i18n = createI18n({locale: 'de',messages: {en: { cart: { title: 'Your shopping cart' } },de: { cart: { title: 'Ihr Warenkorb' } }}});
<h2>{{ $t('cart.title') }}</h2>
W przypadku Magic Translate tekst pozostaje w szablonie:
<h2><T>Your shopping cart</T></h2>
W przypadku atrybutów, takich jak symbole zastępcze, użyj useTranslate:
<input :placeholder="t('Search products')" />
Kiedy wybrać Magic Translate
- Chcesz mieć aplikację Vue w wielu językach bez zarządzania wiadomościami dla każdego z nich.
- Nie masz tłumaczy lub chcesz wydawać aktualizacje bez czekania na tłumaczenia.
- Twój tekst często się zmienia, i chcesz, aby każdy język był na bieżąco.
Kiedy wybrać vue-i18n
- Cały tekst musi zostać przetłumaczony lub sprawdzony przez osobę.
- Potrzebujesz wyszukiwarek, aby zobaczyć przetłumaczony HTML z renderowania serwera Nuxt. Magic Translate dla Vue tłumaczy się w przeglądarce.
- Potrzebujesz bezpłatnej biblioteki typu open source bez zewnętrznej usługi.
Przejście z vue-i18n do Magic Translate
Możesz przełączać jeden komponent na raz. Zastąp $t('key') tekstem w języku angielskim z wiadomości, owiniętym w <T> lub użyj t() z useTranslate jako atrybutów. Obie biblioteki mogą działać obok siebie podczas migracji. Przewodnik Vue pokazuje konfigurację.
Gotowy do wypróbowania? Postępuj zgodnie z instrukcjami dotyczącymi rozpoczę cia pracy, aby przetłumaczyć pierwszy komponent w pięć minut.