Użu avvanzat
It-trattament ta’ lingwi minn lemin għal xellug
TacoTranslate jagħmilha faċli li tassisti bl-ilsna li jaqbdu mid-dritt għax-xellug (RTL), bħal Għarbi u Ebrajk, fl-applikazzjonijiet React tiegħek. Il-maniġjar korrett tal-ilsna RTL jiżgura li l-kontenut tiegħek juri b’mod korrett għall-utenti li jaqraw minn dritt għal xellug.
import {useTacoTranslate} from 'tacotranslate/react';
function Document() {
const {locale, isRightToLeft} = useTacoTranslate();
return (
<html lang={locale} dir={isRightToLeft ? 'rtl' : 'ltr'}>
<body>
// ...
</body>
</html>
);
}
Tista’ wkoll tuża l-funzjoni pprovduta isRightToLeftLocaleCode
biex tiċċekkja l-lingwa attwali barra minn React.
import {isRightToLeftLocaleCode} from 'tacotranslate';
function foo(locale = 'es') {
const direction = isRightToLeftLocaleCode(locale) ? 'rtl' : 'ltr';
// ...
}
Itfi t-traduzzjoni
Biex tiddiżattiva t-traduzzjoni għal partijiet speċifiċi ta’ string jew biex tiżgura li ċerti segmenti jibqgħu kif inhuma, tista’ tuża triple square brackets. Din il-karatteristika hija utli biex tinżamm il-format oriġinali ta’ ismijiet, termini tekniċi, jew kwalunkwe kontenut ieħor li ma jridx jiġi tradott.
import {Translate} from 'tacotranslate/react';
function Component() {
return (
<Translate string="Hello, [[[TacoTranslate]]]!" />
);
}
F’dan l-eżempju, il-kelma “TacoTranslate” tibqa’ bla bidla fit-traduzzjoni.
Multiple fornituri ta’ TacoTranslate
Nissuggerew b’saħħithom li tuża fornitur multipli ta’ TacoTranslate
fl-app tiegħek. Dan huwa utli biex tindirizza t-traduzzjonijiet u s-siltiet tiegħek f’oriġini differenti, bħal il-header, il-footer, jew sezzjonijiet speċifiċi.
Tista’ taqra aktar dwar l-użu ta’ origins hawn.
Il-fornituri ta’ TacoTranslate
jirċievu s-settings minn kwalunkwe fornitur tal-ġenitur, għalhekk ma jkollokx bżonn tirrepeti settings oħra.
import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate} from 'tacotranslate/react';
const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});
function Header() {
return (
<TacoTranslate origin="header">
// ...
</TacoTranslate>
);
}
function Menu() {
return (
<TacoTranslate origin="menu">
// ...
</TacoTranslate>
);
}
export default function App() {
return (
<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
<Header />
<Menu />
</TacoTranslate>
);
}
Trasformazzjoni tal-oriġini jew tal-lokalità
Minbarra l-użu ta’ fornituri multipli ta’ TacoTranslate
, tista’ wkoll teskludi kemm l-origini kif ukoll il-lokal fuq il-komponent Translate
u l-livelli tal-hook useTranslation
.
import {Translate, useTranslation} from 'tacotranslate/react';
function Greeting() {
const spanishHello = useTranslation('Hello!', {locale: 'es'});
return (
<>
{spanishHello}
<Translate string="What’s up?" origin="greeting" />
</>
);
}
Immaniġġjar tal-ħolqien
Meta tbiddel il-lingwi fuq in-naħa tal-klijent, jista’ jieħu ftit mumenti biex titniżżel it-traduzzjoni skont il-konnessjoni tal-utent. Tista’ turi indikatur ta’ tħaddim biex ittejjeb l-esperjenza tal-utent billi tipprovdi feedback viżiv matul il-bidla.
import {useTacoTranslate} from 'tacotranslate/react';
function Component() {
const {isLoading} = useTacoTranslate();
return (
isLoading ? 'Translations are loading...' : null
);
}
Pluralizzazzjoni
Biex jittrattaw il-pluralizzazzjoni u juru tikketti b’bażi ta’ kont qed juru b’mod korrett f’rebbiegħ differenti, dan jikkonsidra l-aħjar prattika:
import {Translate, useLocale} from 'tacotranslate/react';
function PhotoCount() {
const locale = useLocale();
const count = 1;
return count === 0 ? (
<Translate string="You have no photos." />
) : count === 1 ? (
<Translate string="You have 1 photo." />
) : (
<Translate
string="You have {{count}} photos."
variables={{count: count.toLocaleString(locale)}}
/>
);
}
Lingwi multipli
Biex tappoġġja diversi lingwi fl-istess ħin fl-istess applikazzjoni, tista’ tuża diversi fornitur TacoTranslate b’valuri differenti ta’ locale
kif muri hawn taħt:
Tista’ wkoll tissostitwixxi l-locale
fil-livell tal-komponent jew tal-hook.
import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate, Translate} from 'tacotranslate/react';
const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});
function Spanish() {
return (
<TacoTranslate locale="es">
<Translate string="Hello, world in Spanish!" />
</TacoTranslate>
);
}
function Norwegian() {
return (
<TacoTranslate locale="no">
<Translate string="Hello, world in Norwegian!" />
</TacoTranslate>
);
}
export default function App() {
return (
<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
<Spanish />
<Norwegian />
</TacoTranslate>
);
}
Tuża IDs tat-traduzzjoni
Tista’ żżid id
mal-komponent Translate
biex timmaniġġja traduzzjonijiet jew tifsiriet differenti għal dik il-linja testwali. Dan huwa partikolarment utli meta l-istess test jeħtieġ traduzzjonijiet differenti skont il-kuntest. Billi tipprovdi ID uniku, tiżgura li kull okkażjoni tal-linja testwali tiġi tradotta b’mod preċiż skont it-tifsira speċifika tagħha.
import {Translate} from 'tacotranslate/react';
function Header() {
return (
<Translate id="header" string="Login" />
);
}
function Footer() {
return (
<Translate id="footer" string="Login" />
);
}
Per eżempju, il-login tal-header jista’ jittraduċi għal “Iniciar sesión”, u l-login tal-footer jista’ jittraduċi għal “Acceder” bil-Ġspanjol.