Magic Translate vs. Lingui
Lingui to otwarta biblioteka i18n dla JavaScript i React. Podobnie jak Magic Translate, pozwala pisać własne słowa w komponentach zamiast kluczy. Różnica polega na tym, co dzieje się dalej: z Lingui wyodrębniasz wiadomości, przetłumaczasz je i kompilujesz dla każdego języka. Dzięki Magic Translate tłumaczenia są tworzone dla Ciebie.
Na pierwszy rzut oka
| Magic Translate | Lingui | |
|---|---|---|
| Jak piszesz tekst | Twoje własne słowa, owinięte w <T> | Twoje własne słowa, owinięte w <Trans> |
| Tłumaczenia | Tłumaczenie AI, tworzone automatycznie | Wyodrębniasz wiadomości i przetłumaczasz je |
| Pliki wiadomości | Żaden | Jeden katalog na język, na przykład plik PO |
| Zbuduj kroki | Żaden | Wyodrębnij i skompiluj katalogi |
| Nowe języki | Zmień ustawienie language | Przetłumacz każdą wiadomość na nowy język |
| Wielorakie i formatowanie | Przetłumaczone jako część zdania | Wiadomości ICU z regułami liczby mnogiej na język |
| 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
W przypadku Lingui tekst pozostaje w komponencie, ale każda wiadomość przechodzi przez katalog:
import { Trans } from '@lingui/react/macro';const Cart = () => (<h2><Trans>Your shopping cart</Trans></h2>);// Then run `lingui extract`, translate the catalogs for every language,// run `lingui compile` and load the right catalog when the app starts.
W przypadku Magic Translate komponent wygląda podobnie, a tłumaczenia są generowane automatycznie:
import { T } from '@magic-translate/react';const Cart = () => (<h2><T>Your shopping cart</T></h2>);
Kiedy wybrać Magic Translate
- Lubisz pisać własne słowa w swoich komponentach i nie chcesz utrzymywać katalogów.
- Nie masz tłumaczy lub chcesz wydawać aktualizacje bez czekania na tłumaczenia.
- Chcesz dodawać języki bez zarządzania projektem tłumaczeń.
Kiedy wybrać Lingui
- Cały tekst musi zostać przetłumaczony lub sprawdzony przez osobę.
- Potrzebujesz wiadomości ICU dla złożonych liczb mnogości i płci.
- Potrzebujesz bezpłatnej biblioteki typu open source bez zewnętrznej usługi.
Przejście z Lingui do Magic Translate
Ponieważ obie biblioteki zachowują tekst w komponencie, migracja polega głównie na zastąpieniu komponentów i funkcji tłumaczenia: <Trans> staje się <T>, a makro t staje się useT hook. Możesz migrować jeden komponent na raz.
Gotowy do wypróbowania? Postępuj zgodnie z instrukcjami dotyczącymi rozpoczę cia pracy, aby przetłumaczyć pierwszy komponent w pięć minut.