ഉന്നത ഉപയോഗങ്ങൾ
വലത്തുനിന്ന് ഇടത്തേക്ക് എഴുതുന്ന ഭാഷകൾ കൈകാര്യം ചെയ്യൽ
TacoTranslate നിങ്ങളുടെ React ആപ്ലിക്കേഷനുകളിൽ അറബി, ഹീബ്രൂ പോലുള്ള വലത്തുനിന്ന് ഇടത്തേക്ക് (RTL) വായിക്കുന്ന ഭാഷകൾ പിന്തുണക്കാൻ എളുപ്പമാക്കുന്നു. RTL ഭാഷകൾ ശരിയായി കൈകാര്യം ചെയ്യുന്നത് വലത്തുനിന്ന് ഇടത്തേക്ക് വായിക്കുന്ന ഉപയോക്താക്കൾക്കുള്ള നിങ്ങളുടെ ഉള്ളടക്കം ശരിയായി പ്രദർശിപ്പിക്കപ്പെടുമെന്ന് ഉറപ്പാക്കുന്നു.
import {useTacoTranslate} from 'tacotranslate/react';
function Document() {
const {locale, isRightToLeft} = useTacoTranslate();
return (
<html lang={locale} dir={isRightToLeft ? 'rtl' : 'ltr'}>
<body>
// ...
</body>
</html>
);
}നിങ്ങൾക്ക് നൽകപ്പെട്ട isRightToLeftLocaleCode ഫംഗ്ഷൻ ഉപയോഗിച്ച് Reactയ്ക്ക് പുറത്തുള്ള നിലവിലെ ഭാഷ പരിശോധിക്കാം.
import {isRightToLeftLocaleCode} from 'tacotranslate';
function foo(locale = 'es') {
const direction = isRightToLeftLocaleCode(locale) ? 'rtl' : 'ltr';
// ...
}പരിഭാഷ നിഷ്ക്രിയമാക്കൽ
ഒരു സ്ട്രിംഗിന്റെ പ്രത്യേക ഭാഗങ്ങൾ വിവർത്തനം ചെയ്യാതിരിക്കാൻ അല്ലെങ്കിൽ ചില ഭാഗങ്ങൾ യഥാവസ്ഥയിൽ സൂക്ഷിക്കാനായി ത്രിഗുണ ചതുര ബ്രാക്കറ്റുകൾ (triple square brackets) ഉപയോഗിക്കാവുന്നതാണ്. പേര്, സാങ്കേതിക പദങ്ങൾ അല്ലെങ്കിൽ വിവർത്തനം ചെയ്യരുതാത്ത ഏതെങ്കിലും മറ്റു ഉള്ളടക്കങ്ങളുടെ യഥാർത്ഥ രൂപം നിലനിർത്താൻ ഈ സവിശേഷത ഉപകാരപ്പെടും.
import {Translate} from 'tacotranslate/react';
function Component() {
return (
<Translate string="Hello, [[[TacoTranslate]]]!" />
);
}ഈ ഉദാഹരണത്തിൽ, “TacoTranslate” എന്ന വാക്ക് വിവർത്തനത്തിൽ മാറ്റമില്ലാതെ തുടരും.
പല TacoTranslate പ്രൊവൈഡറുകൾ
നിങ്ങളുടെ ആപ്പിൽ പല TacoTranslate പ്രൊവൈഡറുകൾ ഉപയോഗിക്കുന്നത് ഞങ്ങൾ ശക്തമായി പ്രോത്സാഹിപ്പിക്കുന്നു. ഇത് നിങ്ങളുടെ പരിഭാഷകളും സ്ട്രിംഗ്കളും തലക്കെട്ട്, അടിക്കുറിപ്പ്, അല്ലെങ്കിൽ പ്രത്യേക വിഭാഗങ്ങൾ പോലെയുള്ള വ്യത്യസ്ത ഉറവിടങ്ങളായി ക്രമീകരിക്കാൻ സഹായിക്കുന്നു.
നിങ്ങൾക്ക് origins ഉപയോഗിക്കുന്നതിനെക്കുറിച്ച് കൂടുതൽ അറിയാൻ ഇവിടെ വായിക്കുക.
TacoTranslate പ്രൊവൈഡറുകൾ ഏതെങ്കിലും മാതൃപ്രൊവൈഡറിന്റെ സജ്ജീകരണങ്ങൾ സ്വീകരിക്കുന്നു, അതിനാൽ മറ്റു സജ്ജീകരണങ്ങൾ വീണ്ടും ആവർത്തിപ്പിക്കേണ്ടതില്ല.
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>
);
}ഓറിജിൻ അല്ലെങ്കിൽ ലോക്കേൽ ഓവർറൈഡ് ചെയ്യൽ
വിവിധ TacoTranslate പ്രൊവൈഡറുകൾ ഉപയോഗിക്കുന്നതിനു പുറമേ, നിങ്ങൾ Translate ഘടകത്തിലും useTranslation ഹുക്ക് തലങ്ങളിലുമുള്ള originയും localeയും ഓവർറൈഡ് ചെയ്യാനും കഴിയും.
import {Translate, useTranslation} from 'tacotranslate/react';
function Greeting() {
const spanishHello = useTranslation('Hello!', {locale: 'es'});
return (
<>
{spanishHello}
<Translate string="What’s up?" origin="greeting" />
</>
);
}ലോഡിംഗ് കൈകോര്യം ചെയ്യൽ
ക്ലയന്റ് സൈഡിൽ ഭാഷ മാറ്റുമ്പോൾ ഉപയോക്താവിന്റെ കണക്ഷൻ അനുസരിച്ച് വിവർത്തനങ്ങൾ എടുക്കാൻ ചില നിമിഷങ്ങൾ വേണ്ടി വരാം. മാറ്റം നടക്കുമ്പോൾ ദൃഷ്യ ഫീഡ്ബാക്ക് നൽകാൻ ലോഡിംഗ് സൂചകം കാണിക്കുന്നത് ഉപയോക്തൃ അനുഭവം മെച്ചപ്പെടുത്തും.
import {useTacoTranslate} from 'tacotranslate/react';
function Component() {
const {isLoading} = useTacoTranslate();
return (
isLoading ? 'Translations are loading...' : null
);
}ബഹുവചനം
വ്യത്യസ്ത ഭാഷകളിൽ ബഹുവചനം (pluralization) കൈകാര്യം ചെയ്ത് എണ്ണ-ആധാരിത ലേബലുകൾ ശരിയായി പ്രദർശിപ്പിക്കാൻ ഇത് മികച്ച രീതിയാണ്:
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)}}
/>
);
}പല ഭാഷകൾ
ഒരു തന്നെ അപ്ലിക്കേഷനിൽ ഒരേ സമയത്ത് പല ഭാഷകളും പിന്തുണയ്ക്കാൻ, താഴെ കാണുന്നത് പോലെ വ്യത്യസ്ത locale മൂല്യങ്ങളുള്ള TacoTranslate പ്രൊവൈഡറുകൾ ഉപയോഗിക്കാം:
നിങ്ങൾക്ക് locale കമ്പോണന്റ് അല്ലെങ്കിൽ ഹുക്ക് തലത്തിൽ മാറ്റി നിശ്ചയിക്കാനും കഴിയും.
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>
);
}പരിഭാഷാ ഐഡികൾ ഉപയോഗിക്കുന്നത്
ഒരു സമാനമായ സ്ട്രിംഗിന് വ്യത്യസ്ത വിവർത്തനങ്ങളോ അർത്ഥങ്ങളോ കൈകാര്യം ചെയ്യുന്നതിനായി, Translate കോംപോണന്റിൽ id ചേർക്കാൻ നിങ്ങൾക്ക് കഴിയും. sentencia?സന്ദർഭം അനുസരിച്ച് ഒരേ ടെക്സ്റ്റിന് വ്യത്യസ്ത വിവർത്തനങ്ങൾ ആവശ്യമുള്ളപ്പോൾ ഇത് പ്രത്യേകമായി ഉപകാരപ്രദമാണ്. സവിശേഷ ഐഡികൾ നല്കുന്നതിലൂടെ, സ്ട്രിങ്ങിന്റെ ഓരോ ഉദാഹരണവും അതിന്റെ പ്രത്യേക അർത്ഥത്തിനു അനുയായമായി കൃത്യമായി വിവർത്തനം ചെയ്യപ്പെടുന്നുണ്ടെന്ന് നിങ്ങൾ ഉറപ്പാക്കുന്നു.
import {Translate} from 'tacotranslate/react';
function Header() {
return (
<Translate id="header" string="Login" />
);
}
function Footer() {
return (
<Translate id="footer" string="Login" />
);
}ഉദാഹരണത്തിന്, ഹെഡറിലെ ലോഗിൻ സ്പാനിഷിൽ “Iniciar sesión” ആയി വിവർത്തനം ചെയ്യപ്പെടാം, ഫൂട്ടറിലെ ലോഗിൻ “Acceder” ആയി വിവർത്തനം ചെയ്യപ്പെടാം.