TacoTranslate
/
SənədləşməQiymətlər
 
  1. Giriş
  2. Başlayaq
  3. Quraşdırma və konfiqurasiya
  4. TacoTranslate-dən istifadə
  5. Server tərəfində renderləmə
  6. Qabaqcıl istifadə
  7. Ən yaxşı təcrübələr
  8. Xətələrin idarə edilməsi və aradan qaldırılması
  9. Dəstəklənən dillər

Qabaqcıl istifadə

Sağdan-sola dillərin idarə edilməsi

TacoTranslate React tətbiqlərinizdə ərəb və ivrit kimi sağdan sola (RTL) yazılan dilləri dəstəkləməyi asanlaşdırır. RTL dillərinin düzgün idarə edilməsi məzmununuzun sağdan sola oxuyan istifadəçilər üçün düzgün göstərilməsini təmin edir.

import {useTacoTranslate} from 'tacotranslate/react';

function Document() {
	const {locale, isRightToLeft} = useTacoTranslate();

	return (
		<html lang={locale} dir={isRightToLeft ? 'rtl' : 'ltr'}>
			<body>
				// ...
			</body>
		</html>
	);
}

Bundan əlavə, təqdim edilmiş isRightToLeftLocaleCode funksiyasından istifadə edərək cari dili React xaricində yoxlaya bilərsiniz.

import {isRightToLeftLocaleCode} from 'tacotranslate';

function foo(locale = 'es') {
	const direction = isRightToLeftLocaleCode(locale) ? 'rtl' : 'ltr';
	// ...
}

Tərcüməni deaktiv etmək

Bir mətnin müəyyən hissələrinin tərcüməsini ləğv etmək və ya bəzi hissələrin olduğu kimi saxlanmasını təmin etmək üçün üçlü kvadrat mötərizələrdən istifadə edə bilərsiniz. Bu xüsusiyyət adların, texniki terminlərin və ya tərcümə edilməməsi lazım olan digər məzmunların orijinal formatını qorumaq üçün faydalıdır.

import {Translate} from 'tacotranslate/react';

function Component() {
	return (
		<Translate string="Hello, [[[TacoTranslate]]]!" />
	);
}

Bu nümunədə, “TacoTranslate” sözü tərcümədə dəyişməyəcək.

Birdən çox TacoTranslate provayderi

Biz tətbiqinizdə bir neçə TacoTranslate provayderindən istifadə etməyi şiddətlə tövsiyə edirik. Bu, tərcümələrinizi və mətnlərinizi başlıq, altbilgi və ya müəyyən bölmələr kimi müxtəlif mənşələrə təşkil etmək üçün faydalıdır.

Originlərdən istifadə haqqında daha ətraflı məlumatı burada oxuya bilərsiniz.

TacoTranslate provayderləri hər hansı bir valideyn provayderinin ayarlarını miras alır, beləliklə digər ayarları təkrar etməyə ehtiyacınız olmayacaq.

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>
	);
}

Mənşə və ya yerli ayarın əvəz edilməsi

Çoxlu TacoTranslate provayderlərindən istifadə etməklə yanaşı, Translate komponenti və useTranslation hook səviyyələrində həm origini, həm də locale-i əvəz edə bilərsiniz.

import {Translate, useTranslation} from 'tacotranslate/react';

function Greeting() {
	const spanishHello = useTranslation('Hello!', {locale: 'es'});

	return (
		<>
			{spanishHello}
			<Translate string="What’s up?" origin="greeting" />
		</>
	);
}

Yüklənmənin idarə edilməsi

Müştəri tərəfində dilləri dəyişdirərkən, tərcümələrin yüklənməsi istifadəçinin internet bağlantısından asılı olaraq bir neçə saniyə çəkə bilər. Keçid zamanı vizual geribildirim təmin etmək üçün yüklənmə göstəricisi göstərə bilərsiniz.

import {useTacoTranslate} from 'tacotranslate/react';

function Component() {
	const {isLoading} = useTacoTranslate();

	return (
		isLoading ? 'Translations are loading...' : null
	);
}

Çoxluq formaları

Çoxluq formalarını idarə etmək və say əsasında etiketləri müxtəlif dillərdə düzgün göstərmək üçün bu ən yaxşı təcrübə hesab edilir:

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)}}
		/>
	);
}

Çoxlu dillər

Eyni tətbiqdə bir neçə dili eyni vaxtda dəstəkləmək üçün, bir neçə TacoTranslate provayderindən istifadə edə bilərsiniz, aşağıda göstərildiyi kimi müxtəlif locale dəyərləri ilə:

Siz həmçinin locale dəyərini komponent və ya hook səviyyəsində əvəz edə bilərsiniz.

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>
	);
}

Tərcümə ID-lərindən istifadə

Siz eyni sətrin müxtəlif tərcümələrini və ya mənalarını idarə etmək üçün Translate komponentinə id əlavə edə bilərsiniz. Bu, eyni mətnin kontekstdən asılı olaraq fərqli tərcümələr tələb etdiyi hallarda xüsusilə faydalıdır. Unikal ID-lər təyin etməklə, sətrin hər istifadəsinin onun xüsusi mənasına uyğun şəkildə düzgün tərcümə olunmasını təmin edirsiniz.

import {Translate} from 'tacotranslate/react';

function Header() {
	return (
		<Translate id="header" string="Login" />
	);
}

function Footer() {
	return (
		<Translate id="footer" string="Login" />
	);
}

Məsələn, başlıqdakı giriş ispan dilində “Iniciar sesión”, altbilgidəki giriş isə “Acceder” kimi tərcümə oluna bilər.

Ən yaxşı təcrübələr

Nattskiftet tərəfindən təqdim olunan məhsulNorveçdə hazırlanmış